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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wssjdysf 中级黑马   /  2013-11-8 02:52  /  1081 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么在代码中写System.out.println(void.class.getName());是可以的,而System.out.println(null.);就点不出东西,我想写成null.class的。我的理解是null在内存中不存在,所以他的class(字节码)就更不可能存在了。不知道这个理解有误不?null和void有什么区别呢?

2 个回复

倒序浏览
这个问题好刁钻。。。
回复 使用道具 举报
如果直接用null的话是一定要报空指针异常的。out肯定是在别处做了实例化才可以用的。
你可以找一下,找到out实例化的地方。要打印空行的话,下面的语句就行了
System.out.println();

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

评分

参与人数 1技术分 +1 收起 理由
To + 1 赞一个!

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马