内部类访问特点
1,内部类可以直接访问外部类中的成员,包括私有成员
2,外部类要访问内部类,必须建立内部类的对象
一般用于类的设计
分析事物A时,发现A的描述中还有事物B,而且B还在访问A的内容
这时B被定义成内部类来描述
如人是一个类,人身体中的心脏也是一个类,而且心脏会访问人体中的血液、血管等对象
此时心脏被定义为内部类
如果内部类中有静态成员,那么内部类也必须是静态的。
class Outer
{
private static int num =3;
static class Inner
{
void show()
{
System.out.println(num);//可以直接访问外部类的成员(包括私有成员)
}
static void fun(){}; //静态的内部类
}
public void method()
{
Inner in = new Inner();
in.show();
}
}
class A
{
public static void main(String[] args)
{ //创建内部类对象
Outer.Inner in = new Outer.Inner();
in.show();2
//如果内部类不是静态的,那么要想创建内部类对象时
// Outer.Inner in = new Outer().Inner();
Outer.Inner.fun();//直接访问静态内部类的静态方法。
}
}