2007年10月15日月曜日

インナークラス

内部クラスと呼ばれるものにはにはインナークラスのほかに静的ネストクラス、ローカルインナークラス、無名クラスがある。


インナークラス
インナークラスはアウタークラスのインスタンスから呼び出される。

<サンプル>
public class Sample {
    public static void main(String[] arvs) {
        Outer.I1 objInner = new Outer().new I1();
        objInner.func();
        Outer objOuter = new Outer();
        objOuter.func();
    }
}
class Outer {
    class Inner1 {
        void func(){
            System.out.println("Innerclass1");
        }
    }
    class Inner2 {
            void func(){
            System.out.println("Innerclass2");
        }
    }
    void func() {
        new Inner2().func();
    }
}

<出力結果>
Innerclass1
Innerclass2

0 件のコメント: