java8的Optional并没有让程序变得简洁,所以不说他了好吧,谢谢
看了下面这个问题,我觉得这么设计就很好
Java里面null.method()可以设计为返回null吗?
现在java的版本是 每次调用null的方法之后都会抛出一个NullPointerException的异常,
我就觉得java不应该这么设计,
因为这么设计会带来代码量的超大量增加,如果我想保证程序中不存在空指针的问题,就需要每一次方法调用前,都进行非空判断!
否则,无论你的程序写的多完善,都避免不了空指针的问题!
我之所以敢这么说是因为,之前听阿里的人说过,"无论你的程序写的多完善,都避免不了空指针的问题!",还有外加自己这几年开发的经验,大家也可以想一下,这么多年,我们认真开发,认真思考,尽量思考全面,可是谁没碰到过NullPointerException,这就说明人不可能面面俱到,我们都是按照正常逻辑开发的,谁也不能写一行代码想100中可能,
开发中,数据库突然被人清空一列,谁敢保证自己的程序不报空指针?
这种情况下我们的程序就异常了,无法向下执行了,这是不能被我接受的,我认为如果出现了数据库被清空的问题,你只要在返回给我的结果里告诉我,这列为null,就行了,干嘛要让我的整个程序都执行异常?
很多时候,我们是可以接受数据库有些字段有时候是null,有时候有值的。
如果有时候你不能接受结果为null,却得到了Null的结果,这很明显是程序里发生了问题,应该去debug查找问题;
我认为,这是程序员的工作,而不该是java语言的工作,
java现在把所有对null方法的调用都报了异常,就是等于帮程序员调了bug,但是造成了大量本可以避免的代码的增加
相关分类