いくつかのコードでこの構造を見つけました。
プライベートな静的クラスに A を実装させるメリットはありますか? これは、C++ の Pimpl イディオムを思い出させました。JavaでPimplイディオムを使用する利点はありますか?
public abstract class A {
public void doStuff();
public static A getNewInstance() {
return new AImpl();
}
private static class AImpl extends A {
public void doStuff() {
....
}
}
}