これをメソッドヘッダーとして書き込もうとしています:
public static void main(String[] args) throws URISyntaxException, IOException, extends Applet {
つまり、throws ステートメントと extends ステートメントを使用してメソッドを宣言しようとしています。
これは(構文的に)可能ですか?
extendsメソッドには適用されません。another (または) an can anotherのみclassを拡張できます。classinterfaceextendinterface
他の人が言ったように、メソッドでは使用できませんextend。おそらく意図したのは、「このメソッドはこの親クラスのメソッドをオーバーライドします。そのためには、親と同じメソッド シグネチャを使用していることを確認するだけでよく、親のメソッドがオーバーライド可能であることも確認する必要があります。 .
メソッドに final キーワードが含まれておらず、public または protected である場合、そのメソッドはオーバーライド可能です。2 つのクラスが同じパッケージ内にある場合、メソッドがパッケージで保護されている (public/private/protected が含まれていない) 場合は、メソッドをオーバーライドすることもできます。
@Override子メソッドを使用して、実際にメソッドをオーバーライドしていることを自分自身で証明できます。なんらかの理由でメソッドをオーバーライドしていない場合、これはコンパイル エラーになります。
メソッドを拡張することはできません。延長できるのはクラスのみです。
ここでの問題はextends、メソッドではなくクラスに使用されることです。次のようなものが必要になります
public class MyApplet extends Applet {
mainまた、 にメソッドがあってはなりませんApplet。