A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李娟 黑马帝   /  2011-12-24 22:26  /  2099 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 李娟 于 2011-12-26 19:00 编辑

   String str1 = "abc";
   Class cls1 = str1.getClass();
   Class cls2 = String.class();
   Class cls3 = Class.forName("java.lang.String");
   System.out.println(cls1==cls2);
   System.out.println(cls1==cls3);
   两个结果都为真,可是第一个指的是对象的字节码,而第二个是类的字节码,为什么结果会一样?

点评

Class cls2 = String.class(); 编译都不过,怎么能返回真?  发表于 2011-12-26 11:25

2 个回复

倒序浏览
都是类的字节码,str1.getClass()获得的是str1的类型的类的字节码

评分

参与人数 1技术分 +1 收起 理由
吴上储 + 1

查看全部评分

回复 使用道具 举报
因为不管用什么方法,产生的是同一份字节码。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马