0

そのため、URLを開くアプリを作成しようとしています。私がこれまでに持っているものは次のとおりです。

package openkaty;

import java.awt.Desktop;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;

/**
 *
 * @author user
 */
public class OpenKaty {

    /**
     * @param args the command line arguments
     */
public static void main(String[] a) {
      public OpenKaty (String baseUrl, String docID) {
            String docURL = baseUrl+docID;

            try {
                URI uri = new URI(docURL);
                Desktop desktop = null;
                if (Desktop.isDesktopSupported()) {
                   desktop = Desktop.getDesktop();
                }

                if (desktop != null)
                {
                    desktop.browse(uri);
                }
            } catch (IOException | URISyntaxException ioe) {
            }   
      }
}

メンバー クラス openKaty を宣言すると、不正な式の開始エラーが発生します。これは、2 つの部分で構成される特定の URL を開くために、このクラスに引数を渡す別のクラスによって呼び出される必要があります。私はほぼ完全な Java 初心者なので、ばかばかしいほど単純なエラーが発生する可能性が高いことに注意してください。ごめん ;)

4

1 に答える 1

1

これは無効な構文です(Java 7 より前) :

catch (IOException | URISyntaxException ioe){

各クラスを個別にキャッチする必要があります。

catch (IOException ioe){
  //handle the exception
} catch (URISyntaxException urise){
  //handle the other exception
}

また、クラスが閉じられていません-最後に中括弧がありません

また、別のメソッド内でメソッドを宣言することはできません。(コンストラクターがその中にないように)行を削除するとpublic static void main、コードがコンパイルされます。ただし、(任意のクラスで) メイン メソッドが必要になる可能性が高いため、次の行の前にメイン メソッドを閉じて実装します ( を使用public OpenKaty)。

public static void main(String[] a){
  // add your main method code here
} // was missing
public OpenKaty(String baseUrl, String docID){

また、不明な例外を破棄することは決して良い考えではないことに注意してください(あなたのように)。少なくとも、破棄する前にいつでもログに記録できます。

それ以外は、構文は正しいようです。

于 2012-10-31T15:20:24.497 に答える