------- android培训、java培训、期待与您交流! ----------
//内部类即是在外部类中定义的一个类,可以省去建立对象,直接使用外部类的成员,如下代码:
class Outer{
int num = 10;
class Inner{
int num = 20;
void show(){
int num = 30;
System.out.println(num); //访问的是本方法中的num
System.out.println(this.num); //访问的是this代表的类也就是Inner类中的num
System.out.println(Outer.this.num); //访问的是Outer类中的num
//内部类可以直接访问外部类的成员
//内部类之所以可以直接访问,因为内部类持有了外部类的引用:Outer.this
}
}
//外部类要访问内部类,必须创建内部类对象
public void method(){
Inner in = new Inner();
in.show();
}
}
class Demo{
public static void main(String[] args) {
new Outer().method();
new Outer().new Inner().show();//直接访问外部类中的内部类的成员
}
}
//如果内部类是静态的,相当于一个外部类,可以这样调用:
// new Outer.Inner().show();
//如果内部类静态,成员也是静态:
// new Outer.Inner.show();