java中this关键字

时间:2021-09-11 16:25:49
class Outer
{
private int i = 1;
private void f()
{
System.out.println("Hello"+i);
}
class Inner
{
public void g()
{
this.i=9;<span style="color:#ff0000;">//在这里习惯性的加上可this.,但是由于内部类中没有定义当前域,所以编译器是找不到这个i的,显示“错误:找不到符号”</span>
f();
}
}
public void getInner()
{
Inner o = new Inner();
o.g();
}
}
public class Test10_7
{
public static void main(String[] args)
{
Outer p = new Outer();
p.getInner();
}
}
所以,要改变外围类中的i值,只需要将this.去掉就行