Java のネストしたクラスのインスタンス化方法は何ですか?
Javaの内側のクラスのインスタンス化方法は2通り
- 非静的内部クラスのインスタンス化
外部クラスのインスタンス変数.内部クラスのインスタンス変数 = 外部クラスのインスタンス変数.new 内部クラスのコンストラクタ();
サンプルコード:
public class OuterClass {
public class InnerClass {
public void print() {
System.out.println("Inner class");
}
}
public static void main(String[] args) {
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass(); // 非静态内部类实例化
inner.print(); // 调用内部类方法
}
}
- static 内部クラスのインスタンス化
外部クラスのインスタンス名.内部クラスのインスタンス名 = new 外部クラスのインスタンス名.内部クラスのコンストラクタ();
ネイティブな日本語で言い換えた文を 1 つご提供します。
public class OuterClass {
public static class InnerClass {
public void print() {
System.out.println("Inner class");
}
}
public static void main(String[] args) {
OuterClass.InnerClass inner = new OuterClass.InnerClass(); // 静态内部类实例化
inner.print(); // 调用内部类方法
}
}