黑马程序员技术交流社区

标题: 类 是不是Class类的实例 [打印本页]

作者: lzw123451    时间: 2013-2-28 02:40
标题: 类 是不是Class类的实例
Class是描述类的类

那么
String str = new String(“abc”);  中的String是不是Class对象

我们建立一个Student的类

class Student
{
    String name;
     int age;
}

这个Student类是不是Class类对象
作者: 陈圳    时间: 2013-2-28 08:29
你把概念搞混淆了.Student是一个类,不是类对象,用他创建的对象是类Student的对象.class只是定义类的关键字,
作者: 赵海洋    时间: 2013-2-28 08:39
我突然想到这样比喻一下你看行不行
假设class是一个形容词,而Student是另一个形容词,我们再把对象假设是一个名词。
class这个形容词是描述Student这个形容词的,而Student这个形容词的对象是一个名词,Student是描述这个名词的。
假设class要是有个对象,那么这个对象也应该是个名词,绝不会是Student这个形容词。
这是我能想到的比较通俗的方法了,形容词名词应该比较好区分吧。。。。
作者: Benwolf0818    时间: 2013-2-28 08:42
在Java中,每个class都有一个相应的Class对象。也就是说,当我们编写一个类,编译完成后,在生成的.class文件中,就会产生一个Class对象,用于表示这个类的类型信息
Class 类的实例表示正在运行的 Java 应用程序中的类和接口
获取Class实例方式:
1、利用对象调用getClass()方法获取该对象的Class实例;
2、使用Class类的静态方法forName(),用类的名字获取一个Class实例
3、运用.class的方式来获取Class实例,对于基本数据类型的封装类,还可以采用.TYPE来获取相对应的基本数据类型的Class实例
作者: wahaha    时间: 2013-2-28 08:48
1.class是定义类的关键字,是java自定义的,你可以理解成修饰语,
2.Student是你定义的类
3.String str = new String(“abc”);  String是Java自己定义的类,用来定义字符串....本例中  str是 你定义的字符串对象
      关于String ,你可以查API文档,有更详细解释


PS::呵呵,盆友,我觉得你可能还没对Java有很好的理解,对象可以是数据..可以是字符串.可以是你定义的Student.也可以把方法封装成对象
       一切皆对象啊,哈哈.加油!!
作者: 谢洋    时间: 2013-2-28 10:32
我的理解是:
String str = new String(“abc”);  中:
1,Class 代表的是所有java类 的类,也就是说某个java类就是Class类的一个实例,
如:String.class 就是Class类的一个实例;
2,String 可以说是String.class这个类的一个引用名(名字), 这个名字在java中就代表了String.class这个类,
3,str 准确来说是String.class的一个实例,因为在java中String代表了String.class,所以也可以说str是String类的一个实例对象。
4,再作一个比如:动物(相当于Class)一个类,它的实例有人类、猫科类、鱼类等。
人类的实例一个个的人这种个体,猫科类的实例就一个些猫啊,老鼠啊一个个的个体。




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