java中,外部类的对象不创建,而只创建内部类的对象,是不是这个对象不是实体?

如果外部类的static方法创建此类内部类(非static)的一个对象,但此外部类本身没有对象,没有实体化。那么这个内部类的对象是不是也不是实体?

第1个回答  2011-12-17
这个内部类的对象是个实体;因为外部类的static中的变量如果不是实例,那么这个外部类在加载是就没办法加载static方法。追问

public class中的main()方法本身不是实例吧?
如果在这个public class中创建内部static类,通过static main()方法创建这个内部类的对象。
那么这个对象是不是实例呢?因为main()方法不是实例的方法

追答

首先你要知道static的作用:对于static方法,那个类有static方法,那么关于这个类的所有实例与非实例都有着这个static方法的操作;当加载这个类时,static同时也被加载,而非static方法只有只实例情况下加载,所以要用非static方法必须先实例话(即 new),这是static与非static方法的实质区别!对于main()方法的,这是一种固定格式,也就是说public static void main(String agrs[]){}这就是所有程序运行的开始标志这个你不要管,你也不能打破这格式;对于你说的static类在无论在哪里都是实例,与是不是在main()方法无关;在非实例方法中完全可以创建任何对象,但是在static中必须创建实例对象

相似回答