2016-09-03 3 views
0

私はJFrameのSuppressWarningsは

@SuppressWarnings("serial") 
public class View extends JFrame{ 
    //bla bla bla bla code 
} 

を拡張し、次のクラスでは、私は以下のサブクラスきていますので、私は追加Eclipseは私に警告を与えているViewクラスで

public class Foo extends View{ 

    //bla bla bla bla 
} 

をSuppressWarningsを取り除くために警告を出してください。これを行うことで、FooクラスでSuppressWarningsを再入力する必要はないと思っていましたが、EclipseがFooクラスの警告を私に与えているようです。

答えて

1

@SuppressWarningsは、Javaのアノテーションの例です。あなたが望むのは、FooにViewの注釈を継承させることです。

しかし、これはJavaでは不可能です。 Thisなぜそれが不可能なのかを説明しています(つまり、インターフェイスメソッドが注釈を持つことができるので、多重継承が発生する可能性があります)。

Eclipseに警告が表示されたら、一般的に無視しないでください。 SuppressWarningsが適切であると確信しているのであれば、すべてのサブクラスで同じアノテーションを使用する必要があります。

0

JFrameはSerializableインターフェイスを実装しています。 Serializableを実装しているクラスでは、eclipseはserialVersionUIDを持つように要求します。

ViewはJFrameから拡張されており、Serializableインターフェイスも実装していると言えます。 Fooも同様です。そのため、serialVersionUIDを追加するか、またはViewFooの両方にSuppress-Warningを追加する必要があります。

関連する問題