私は別のstatic
内部クラスを持つクラスを持っている:あなたはインスタンス変数にアクセスする必要はありませんとき静的な内部クラスから外部クラスのフィールドにアクセスできますか?
class A {
private List<String> list;
public static class B {
// I want to update list here without making list as static
// I don't have an object for outer class
}
}
静的ネストされたクラスは、周囲のクラスのすべてのインスタンスへの暗黙的な参照を持っていません。変更するインスタンスへの参照を渡す必要があります。クラスBはなぜ静的なのですか? –
クラスBは、UI表示のためのテンプレート構造を生成していましたが、値を取得するために何らかの操作を実行しています。そのクラスを周囲のクラスに設定する必要があります。これは設計上の問題ですか? –
各Bインスタンスが特定のAインスタンスに関連し、それを操作できるようにする必要がある場合、最も単純な解決策はBを非静的にし、構築時にその関係を確立することです。 –