特徴

Android用語集

カテゴリー: Java  閲覧数:448 配信日:2013-04-25 11:12


内部クラスのインスタンス


内部クラスのインスタンスは、外部クラスのインスタンス内にある
1.外部クラスのインスタンス作成
2.そのインスタンス参照経由で内部クラスのインスタンスを作成(外部クラスのインスタンス1つに対して複数の内部クラスのインスタンスが生成可能)
3.外部クラスのインスタンスと結びついた内部クラスのインスタンスが作成される
4.内部クラスは外部クラスのフィールド及びメソッドにアクセスできる

解説
・内部クラスのインスタンスは、外部クラスのインスタンスの中に含まれる
・そのため、内部クラスのインスタンスを生成するためには、必ず外部クラスのインスタンスが必要となる
・その「外部クラスのインスタンス」を「エンクロージングインスタンス」と呼ぶ
※但し「このケース」=「エンクロージングインスタンス」ではなく、あくまでも「エンクロージングインスタンス」の「1ケース」に過ぎない。詳しくはこちら


単純なnewInstanceでは、newされない


内部クラスのインスタンス化は、エンクロージングインスタンスの存在が前提
・外部クラスのインスタンスがないと、内部クラスのインスタンスは生成不可