黑马程序员技术交流社区

标题: 关于反射的一些问题 [打印本页]

作者: wssjdysf    时间: 2013-11-8 02:52
标题: 关于反射的一些问题
为什么在代码中写System.out.println(void.class.getName());是可以的,而System.out.println(null.);就点不出东西,我想写成null.class的。我的理解是null在内存中不存在,所以他的class(字节码)就更不可能存在了。不知道这个理解有误不?null和void有什么区别呢?
作者: 黄炳期    时间: 2013-11-8 08:29
这个问题好刁钻。。。
作者: 赵许星    时间: 2013-11-8 09:23
如果直接用null的话是一定要报空指针异常的。out肯定是在别处做了实例化才可以用的。
你可以找一下,找到out实例化的地方。要打印空行的话,下面的语句就行了
System.out.println();

void表示一个无返回值的方法,无返回值不代表为空,打个比方来说吧,就是我喂了鸡,但是鸡没给我下蛋。null呢表示空值,空值不代表没有返回,体现在方法里面就是return null,我在调用这个方法时能获取到一个null值




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