java初学者 加入小组

294个成员 65个话题 创建时间:2015-02-03

Java疑惑求教李老师

发表于2015-04-21 6506次查看

尊敬的李老师: 

    我是您忠实的读者,在学java中对您的 《Java开发实战经典》推崇备至,并向同学推荐了此书,有7个同学购后,给予跟高评价 我个人理解反射中,所有类也是一个对象,是Class类的实例,即类对象,而李老师在该书中提到 

    1、所有类的对象是Class类的实例 

    2、Class类是一个类的本身 

    另外,说是Class.forName(”包名.类名“)比类名.class,类名.getClass()常用,是因为前者可以传入字符串形式,后两个需要一个明确的类, 我个人理解是前者字符串形式的全称类名,后两个就可在使用时,导包 import 包名.类名,也就可以了。 

     不太理解,请赐教!

12回复
  • 2楼 蜗牛亦然 2015-04-28

    李老师:您好,你说的意思,我懂。我想弄明白的是:所有类是Class类的实例,还是所有类的对象是Class类的实例(正如Java实战开发经典中所说),我理解是前者。

      

     

     

     

  • 3楼 蜗牛亦然 2015-04-28

    另外,我查阅一些资料,说Class.forName()在编译阶段可以不需要类已经写完,就可通过编译,在运行时,写完即可。我尝试了一下,以org.cdp.Person类为例,不写,Class.forName(“org.cdp.Person”);编译报错。您不需要解说高深的,我就想明白上面一点和这个Class.forName()最方便在哪

  • 4楼 蜗牛亦然 2015-05-08

    我个人理解2中不是说class.forName 以外的两种方式需要明确的类,因为它的包名.类名,一样明确。其他两种方法,如果导包是一步,实例化是一步,共两步,而这个只需要一步,所以class.forName省了一步,方便

     

  • 5楼 蜗牛亦然 2015-05-08

    李老师,讲出了反射的作用,可偏离了我疑惑的1及2两点

发表回复
你还没有登录,请先 登录或 注册!