/*
内部类的访问规则:
1.内部类可以直接访问外部类中的成员,包括私有成员;
是因为内部类中持有了一个外部类的引用,格式:外部类名.this
2.外部类要访问内部类,必须建立内部类对象。
*/
class Outer
{
private int x = 3;
class Inner //内部类,可以被private修饰,修饰后,在第33行将出现错误,无法访问到private成员。
{
//int x = 4;
void function()
{
//int x = 5;
System.out.println("Inner:"+x); //隐藏了Outer.this.x;x=5,this.x=4,Outer.this.x=3。
}
}
void method()
{
Inner in = new Inner();
in.function();
System.out.println("Outer:"+x);
}
}
class InnerclassDemo
{
public static void main(String[] args)
{
//Outer out = new Outer();
//out.method();
Outer.Inner inner = new Outer().new Inner();
inner.function();
}
}
JAVA学习之内部类(一)
最新推荐文章于 2023-08-15 11:41:26 发布