ゴミクズSEのなんやかんや

気分のったときになんやかんや書く。ウェブブックマーク+ソース置き場+公開メモ。

内部クラス

Javaで内部クラスと呼ばれるものの書き方は色々ある。

参考サイト様
http://www.booran.com/menu/java/inner.html


内部クラスはコンパイル後のオブジェクトファイルに注意が必要。

例えば、こんなソース

class Test{void getTest(){}}

class InnerClassTest{
    public static void main(String[] args){
        Test t = new Test() {
            void getTest(){
                System.out.println("Sub") ;
            }
        } ;
        t.getTest() ;
   }
}

こいつをコンパイルすると

InnerClassTest$1.class
InnerClassTest.class
Test.class

オブジェクトファイルとしてはこんなんが出力される。
内部クラスは$1がついて別ファイルとなる。

ライブラリ管理やサーバへの配布を行う時に注意しないといけないよ。