3

私は2つのクラスをコーディングしています。

public class ServerPanel extends JPanel{

private EventListenerList listenerList = new EventListenerList();
(...)
}

public class DetailsPanel extends JPanel{

private EventListenerList listenerList = new EventListenerList();
(...)
}

現在、Netbeans は、listenerList 変数について、フィールドが別のフィールドを非表示にすることを警告しています。

私の質問は、これは深刻な問題ですか? 後でイベントを追加/削除するときに問題が発生しますか?

これは良いJavaの練習ですか?

私は何をすべきか?

ありがとう!

4

2 に答える 2

4

これはコンパイル エラーではなく、2 つのフィールドは別々に扱われるため、何も壊れません。ただし、これを行うことはお勧めしません。あなたを含め、コードに取り組んでいる人にとって非常に混乱を招く可能性があるからです。

listenerListまた、スーパークラスのフィールドを置き換えるのではなく、同じ名前で新しいフィールドを作成するだけであることも知っておく必要があります。

[編集]

明確にする必要があります。名前はまったく同じではありません。完全修飾名が異なります。

javax.swing.JPanel.listenerList
whatever.yourpackageis.ServerPanel.listenerList
whatever.yourpackageis.DetalsPanel.listenerList
于 2013-08-30T23:17:10.500 に答える