除了用静态内部类和成员内部类还有什么方法
时间: 2024-04-22 21:24:34 浏览: 128
Java单例模式实现静态内部类方法示例
除了静态内部类和成员内部类,还有一种方法可以实现类似的功能,那就是局部内部类。
局部内部类是在方法内部定义的类,只能在方法内部使用,无法在方法外部访问。局部内部类可以访问外部类的成员变量和方法,但是外部类无法直接访问局部内部类。
以下是使用局部内部类的示例代码:
```java
class A {
int age = 0;
public void testA() {
class B {
int age = 1;
void testB(A a) {
System.out.println(age);
System.out.println(A.this.age);
A.this.age = a.age;
System.out.println(A.this.age);
}
}
B b = new B();
b.testB(this);
}
}
class Main {
public static void main(String[] args) {
A a1 = new A();
a1.age = 3;
a1.testA();
}
}
```
在上述代码中,类B被定义为方法`testA()`的局部内部类。它可以访问外部类A的成员变量`age`以及调用`testB()`方法。这样可以实现与内部类相似的功能,但是作用域仅限于方法内部。
阅读全文