阅读量:0
在Java中,内部类是定义在其他类内部的类。内部类可以访问外部类的成员变量和方法,甚至可以访问外部类的私有成员。内部类可以分为四种类型:成员内部类、局部内部类、匿名内部类和静态内部类。
定义内部类的方法如下:
- 成员内部类:
public class OuterClass { private int x; public class InnerClass { public void display() { System.out.println("Value of x: " + x); } } }
- 局部内部类:
public class OuterClass { public void display() { class InnerClass { public void display() { System.out.println("Inside Local Inner Class"); } } InnerClass inner = new InnerClass(); inner.display(); } }
- 匿名内部类:
public class OuterClass { public void print() { new Object() { public void display() { System.out.println("Inside Anonymous Inner Class"); } }.display(); } }
- 静态内部类:
public class OuterClass { static class InnerClass { public void display() { System.out.println("Inside Static Inner Class"); } } }
使用内部类的方法如下:
public class Main { public static void main(String[] args) { OuterClass outer = new OuterClass(); // 使用成员内部类 OuterClass.InnerClass inner = outer.new InnerClass(); inner.display(); // 使用局部内部类 outer.display(); // 使用匿名内部类 outer.print(); // 使用静态内部类 OuterClass.InnerClass staticInner = new OuterClass.InnerClass(); staticInner.display(); } }