黑马程序员技术交流社区

标题: Class和Object两者的关系 [打印本页]

作者: 张志阳    时间: 2012-5-9 13:30
标题: Class和Object两者的关系
怎么能更好的理解Class和Object两者的关系?
作者: 李啸    时间: 2012-5-9 13:38
从类的层次结构上说Class还是Object的子类。从代码运行时来说Class是描述类在运行时具有的属性。来看Class的声明:class Class<T>,说明Class<>是一个类型,它的对象是一个Object类的具体子类,也就是说Class是对类的一种运行时属性的抽象
作者: 徐然    时间: 2012-5-9 14:47
Class是Object的子类
首先从定义上分析
类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法。
Class 类的实例表示正在运行的 Java 应用程序中的类和接口
而API中也显示Class是Object的子类
其次,从Object方法中可以看出,它有一个getClass()方法,返回:表示此对象运行时类的 Class 对象

作者: It's_Zero    时间: 2012-5-9 15:11
1类是事物实体,对象就是对实体的描述,
2类是由class加载的字节码文件,对象是字节码文件加载到内存中
3 类存在于内存的栈内存区, 对象是对类的具体描述,如有变量 方法  等具体描述, 通过new 出来,存在于堆内存区
作者: 黑马张立国    时间: 2012-5-9 16:07
Class就是Object的子类,就像其他Object的子类一样,例如:String。
类是对象的向上抽取而来,就是描述一类对象的共同属性和方法。
而Class是对字节码这一类对象的描述,字节码有的属性和方法就成了Class的方法属性。
大师们常说“万物皆对象”
作者: 黄奕豪    时间: 2012-5-9 16:27
哥们你就这样想,object是万类之主,class是object的子民,子民是个统称,是所有类的共同称呼,只是用来形容人的,所以叫做类名,而你要实现子民能做的事情,就得new一个实实在在的人出来,比如说 (子民(class) 人{ 人 zi=new 凤姐}),凤姐是个具体的人,她能干万类之主的事,也能干子民中的事!!明白木有?{:soso_e151:}{:soso_e151:}




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