貌似你所说的有误。
实例内部类对象是与外部对象关联的。所以实例化实例内部类,先要获得外部类的对象。同一个类中非静态方法由于已经关联了对象,所以不必指定外部对象,但是在静态方法以及客户类中实例化实例内部类,必须先实例化外部对象。所以静态方法中是可以创建实例内部类对象的。
补充一下:
实例化静态内部类:同一个类的方法(静态与非静态)中,不能以实例化外部类的对象去访问静态内部类,即【new 外部类().new 内部静态类()】是错误的,在外面访问这样是可行的;在同一个类的方法中实例化静态内部类的候不需要指定外部类(对于普通方法,已经有一个对象,对于静态方法,有一个类绑定);在外面实例化本类的静态内部类,需要指定外部类。
参考我的笔记:[url]http://blog.csdn.net/xjwangliang/article/details/6553185[/url] |