有意思的题,200分

treeroot 2006-01-13 10:55:53
解释一下这条语句
Class.class.getClass();
...全文
1154 88 打赏 收藏 转发到动态 举报
写回复
用AI写文章
88 条回复
切换为时间正序
请发表友善的回复…
发表回复
dudee 2006-01-28
  • 打赏
  • 举报
回复
需要讨论这么多吗.打开源程序看看不就得了吗.
楼上说的:"第一个Class是库类,第二个class(小写)是其静态的内部类,getClass()是class得方法".有可能吧.
arbeisi210 2006-01-28
  • 打赏
  • 举报
回复
ding..............


【华为/慧通 C、C++、VC、Java 程序员招聘】

详见: http://community.csdn.net/Expert/topic/4536/4536791.xml?temp=.0224573
luofamous 2006-01-27
  • 打赏
  • 举报
回复
看 来我的路还长呀~~~~~~~
humanity 2006-01-27
  • 打赏
  • 举报
回复
用 Jode 等反编译工具看一下 任何一个 .class 文件就知道。

目前 jode 1.1.2 pre 反编译出来的代码仍然保留了痕迹。

比如 class$java$lang$String == null ? class$java$lang$String : class$("java.lang.String");
liukang520236 2006-01-27
  • 打赏
  • 举报
回复
好老的帖子阿!
tommy310 2006-01-27
  • 打赏
  • 举报
回复
ok
pipa505 2006-01-27
  • 打赏
  • 举报
回复
谢谢楼主提出这个问题,总结了一下前面高人的东西,再看了那两个地址里的,现在差不多明白了,谢谢
chyx413332087 2006-01-25
  • 打赏
  • 举报
回复
学习
yczz 2006-01-25
  • 打赏
  • 举报
回复
我来总结一下吧:
Class类是为了保存JAVA虚拟机运行时(RTTI)对所有对象进行类型识别的信息而设立的.
当然Class也是继承自Object类的,每个类都有Class对象,想得到一个类的Class对象有三种方法.
1:调用getClass()
Student s;
Class cl=s.getClass();
2:静态方法forName(String );
String className="Student";
Class cl=Class.forName(className);
3:class成员变量法
Class cl=Student.class;
楼主的Class.class.getClass();
意思应该很清楚了Class.class返回一个Class类的Class对象,在调用getClass()右返回一次Class的对象(有点饶口)
linyulinyulinyu 2006-01-17
  • 打赏
  • 举报
回复
呵呵,路过 讨论蛮多的吗 学习了
xmankevin1980xman 2006-01-17
  • 打赏
  • 举报
回复
学习
Kevin_jun 2006-01-17
  • 打赏
  • 举报
回复
http://editblog.csdn.net/programmer/archive/2004/10/27/806.aspx
<<侯捷观点——Java反射机制>>
要不在JB里用的同时看下JDK中的源代码更好
至于class是不是静态成员,还是一种反射机制,仁者见仁,智者见智啦

楼主应该更清楚,都在上面发感慨啦.
干脆您帖出JDK的源码示例,然后再逐一分析下,呵呵
treeroot 2006-01-17
  • 打赏
  • 举报
回复
如果能够理解
Class.class==Class.class.getClass()
那对Java反射应该比较清楚了
hui_feng 2006-01-17
  • 打赏
  • 举报
回复
谁来个总结吧。
treeroot 2006-01-17
  • 打赏
  • 举报
回复
虽然是简单的一条语句,但是里面的内涵是很丰富的。
不能理解内涵,但是从表面理解是很容易的。

表面理解:
.class不过是java的Class类型字面量而已, 就好象"String" 是一个字符字面量,Object.class就是类Object的类型的字面量,当然Class.class就是类Class的类型的字面量。

对比: String s="String" ---> String s=new String("String");
Class.class ---> Class.forName("java.lang.Class")

getClass是Object中的一个方法,不过是返回某个对象的类型,关键某个对象的类型本身也是
Class类的一个实例,确实是应该要晕了!
nankym 2006-01-17
  • 打赏
  • 举报
回复
晕了!谁说的对?
学习~~~~~
xuefeng1986 2006-01-17
  • 打赏
  • 举报
回复
可以理解成
Class是一个类
class是Class类的对象
getClass()是class方法
xuefeng1986 2006-01-17
  • 打赏
  • 举报
回复
学习
洪泉 2006-01-16
  • 打赏
  • 举报
回复
呵呵,不错,学习学习
linlin2005 2006-01-16
  • 打赏
  • 举报
回复
好玩嘿
加载更多回复(68)

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧