如果内部类中还有一个内部类,最里面的内部类想访问最外面的类应该怎么办
package com.mooc;
public class lj {
static int score1 = 86;
// 定义静态变量score2
int score2 = 92;
//内部类
public class sum {
int a;
sum(){
a=99;
};
//内部类的内部类
public class sum1{
int a1;
sum1(){
a1=100;
};
public void s1() {
//调用最外部类
lj h = new lj();
System.out.println(h.score2);
}
}
};
public static void main(String[] args) {
// 调用静态方法sum并接收返回值
lj h1 = new lj();
sum h2 = h1.new sum();
sum.sum1 h3 = h2.new sum1(); //重点 这样
h3.s1();
}
}
这个地方
//调用最外部类
lj h = new lj();
System.out.println(h.score2);
//这是在成员方法里实例化对象,虽然可以,但是不规范,而且等于把最外层的类实例化了两次
//可以改为
System.out.println(lj.this.score2);
//不知大家以为如何?