さて、セットアップは次のとおりです。
EnclosingClass {
public interface ClassFactory {
public static SomeClass getInstance(int which);
}
private static ClassFactoryImpl {
@Override
public static SomeClass getInstance(int which) {
switch(which) {
case 1:
return new SomeClassSubclassA();
case 2:
return new SomeClassSubclassB();
...
}
}
}
}
私は、次のような声明を発表できるようにしたいと考えています。
SomeClass x = EnclosingClass.ClassFactory.getInstance(instanceClassRequest);
これは可能ですか?そうでない場合、実装するインターフェイスのみを介して静的なネストされたクラスにアクセスするにはどうすればよいですか?