本帖最后由 王得新 于 2012-9-1 01:19 编辑
内部类其实就是外部类的一个成员定义,在类中如同使用其它类一样可以使用自己的内部类
public class A
{
static class D
{
static class E
{
class B
{
class C
{
void show()
{
代码块;
}
}
}
}
}
public static void main(String[] args)
{
A.D.E.B.C (这是clazz的引用类型,没什么讲的) clazz = new A.D.E().new B().new C();
//主要是A.D.E().new B().new C();
要记住,内部类其实就外部类的一个成员,所以A可以直接调用D(即A.D,为什么这样,因为D是static,就把D看做A类中的一个
静态方法,都知道,一个方法如果是静态的,那么可以直接用类名.方法,同理类名.类名)。所以接着是D.E,但是,下面的B、C
都是普通的类了,所以后面就是E().new B().new C();
或许这样可能看到懂:
A.D.E d=new A.D.E();
A.D.E.B.C clazz=d.new B().new C();//这里可以把d换成 new A.D.E()------>new A.D.E().new B().new C()
//
clazz.show();
}
}
|