如何在 Java 中定义一个内部类?(java用内部类声明对象)
在Java中,内部类是一个定义在另一个类内部的类。内部类可以是静态的或非静态的。下面是如何定义内部类的例子:
public class OuterClass {
// 非静态内部类
class InnerClass {
void display() {
System.out.println("Inside InnerClass");
}
}
// 静态内部类
static class StaticInnerClass {
void display() {
System.out.println("Inside StaticInnerClass");
}
}
public static void main(String[] args) {
OuterClass outer = new OuterClass();
// 创建非静态内部类的实例
InnerClass inner = outer.new InnerClass();
inner.display();
// 创建静态内部类的实例
StaticInnerClass staticInner = new StaticInnerClass();
staticInner.display();
}
}
在这个例子中,我们定义了一个名为OuterClass的外部类。OuterClass中定义了两个内部类:一个非静态内部类InnerClass和一个静态内部类StaticInnerClass。
非静态内部类(也称为实例内部类)与外部类的实例关联在一起。这意味着你不能在没有外部类实例的情况下创建非静态内部类的实例。因此,你需要使用外部类实例来创建非静态内部类的实例,如outer.new InnerClass()所示。
静态内部类与外部类实例没有关联,因此你可以直接创建静态内部类的实例,就像创建普通类的实例一样,如new StaticInnerClass()所示。