说明:
- 局部内部类定义在外部类的局部位置,比如在方法中。
- 局部类可以直接访问外部类的所有成员,包含私有的。
- 局部类不能添加访问修饰符,因为本身就是一个局部变量,局部变量不能使用修饰符,但是可以用final修饰。
- 外部类要访问局部类,可以先在局部类所在的方法中创建实例或其他操作,而后在外部类中通过对象调用这个局部类所在的方法。
- 外部类和局部类重名时,就近原则,但可以通过外部类名.this.成员去访问外部类成员。
上代码:
public class OuterClass {
int x=3;
public void method2(){
System.out.println("外部的方法");
}
public void method1(){
int x=5;
class jubu{
public void metho03(){
System.out.println(x);
System.out.println(OuterClass.this.x);
}
}
jubu j1 = new jubu();
j1.metho03();
System.out.println(j1.getClass());
}
public static void main(String[] args) {
OuterClass outerClass = new OuterClass();
outerClass.method1();
}
}
|