黑马程序员技术交流社区

标题: 类中包含多个本类对象的疑问 [打印本页]

作者: 张林敏    时间: 2013-5-3 13:27
标题: 类中包含多个本类对象的疑问
本帖最后由 张林敏 于 2013-5-3 22:23 编辑

public abstract class Week {
                public static final Week Monday = new Week();
                public static final Week Tuesday = new Week();
                public static final Week Wednesday = new Week();
                public static final Week Thursday = new Week();
                public static final Week Friday = new Week();
                public static final Week Saturday = new Week();
                public static final Week Sunday = new Week();
               
}


像上面的例子,类中有多个自己的对象。然后这些每个对象里面又都包含其他的对象(也包括自己本身对象),这实际上会创建多少个对象。
作者: 曹睿翔    时间: 2013-5-3 14:36
云丝人都哪去了,也没个人回到问题
你觉得被abstract修饰的类可以创建对象?明显编译不通过
再者想知道有几个对象就要看你new几个了,至于自身的Week这个类,是类加载器加载进内存形成字节码文件,而在类中创建的对象是Week的实例(也就是对象),其实Week对应的.class 文件也是对象,看怎么看待了,现在你只要记住实例是对象就行

作者: 张龙欢    时间: 2013-5-3 15:14
首先被abstract修饰过的类是不能在实例化了的,然后new的意思是新建,每当new一次就在内存中形成一个实体,想要知道有多少个对象就看你程序new了几次!
作者: 金辉    时间: 2013-5-3 17:19
对,抽象类不能创建对象。每new一次创建一个对象,Monday 。。。Sunday 这些只是new出来对象的地址引用
作者: xiewen    时间: 2013-5-4 00:25
抽象类不能创建对象,首先就不能编译通过,new了多少次就创建了多少对象。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2