内部クラスに関係するコンストラクターがあるかどうか知りたいです。たとえば、以下のコードスニペットについて考えてみます。
class MyOuter
{
private int x= 10;
class MyInner
{
void dostuff(){
System.out.println("The value of x is "+x);
}
}
}
別のJavaファイルでは、以下に示すように、MyOuterクラスとMyInnerクラスの両方のインスタンスを作成します。
Class Program
{
public static void main(String [] args)
{
MyOuter mo = new MyOuter();
MyOuter.MyInner mi = mo.new MyInner();
mi.dostuff();
}
}
上記のコードスニペットは正常にコンパイルされ、「xの値は10です」という出力が得られます。
ここで知りたいのは、New()がMyInnerクラスとMyOuterクラスで使用されたときにコンストラクターが呼び出されるかどうかです。はいの場合、内部クラスから外部クラスにチェーンするコンストラクターはありますか(サブクラスがスーパークラスのコンストラクターを呼び出すなど)。