diconでインナークラスを指定する方法

使用するケースはそれほど多くないかもしれませんが、diconでインナークラスをcomponentとして登録することが可能です。

public class TopSampleClass {
    public TopSampleClass() {}

    public class InnterSampleClass {
        public InnterSampleClass() {}

    }
}

という感じのインナークラスがある場合、diconでは以下のようなかたちでコンポーネントを指定することができます。


    new sample.TopSampleClass()

  • 「$」でクラス名をつなげる
    • コンパイルしたときのクラス名がそのようになっている
  • インナークラスのインスタンス生成時、arg属性で外側となるクラスを指定する