私のクラスにはHashMap<MyClass2,Queue<Point2D>>
というインスタンスがあります。私のクラスはJPanel
を実装しています。 FindBugsのは、私のクラスでHashMap
のインスタンスのSE_BAD_FIELDを示しているが、HashMap
はSerializable
を実装しています。私はfindbugs 3.0.0XとJDK 1.7.0_45を使用しています。Findbugs Eclipseプラグインがクラス内のHashMapのインスタンスに対してSE_BAD_FIELDを表示しています
のSe:非過渡非シリアライズインスタンスフィールドシリアライズ クラス(SE_BAD_FIELD)で
この直列化クラスは は、一過シリアライズ、またはjava.langでもない非プリミティブインスタンスのフィールドを定義します。 Objectであり、 は、Externalizableインターフェイスまたは readObject()およびwriteObject()メソッドを実装していないようです。このクラスのオブジェクト は、非シリアル化可能オブジェクト がこのフィールドに格納されている場合、正しくデシリアライズされません。
MyClass2の各フィールドはシリアル化可能ですか? Point2Dはどうですか? – WPrecht
'HashMap'のキーの型と値の型も' Serializable'ですか? – Varun
'MyClass2'は' Serializable'ではありません。 'Point2D'は' java.awt.geom'パッケージからのJavaクラスです。 – Varun