07 2018 档案
摘要:由于历史原因,在之前的版本里无论Date还是Calendar都非常难用,尤其在涉及到日期计算方面,而且其中日期转换的类DateForamt还是非线程安全的。也正因为难用,一般项目里面都引入第三方的类库操作时间,例如Joda-Time和apache-lang包的DateUtils类。 基于上述种种原因
阅读全文
摘要:函数式接口 就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口,函数式接口可以被隐式转换为lambda表达式。 之前已有的函数式接口: java.lang.Runnable java.util.concurrent.Callable java.util.Comparator java.io
阅读全文
摘要:接口中有默认方法实现Java8允许我们使用default关键字,为接口声明添加非抽象的方法实现。 Java8中接口和抽象类的比较相同点:都能定义方法和属性(之前接口不能定义方法)。抽象类和接口都可以不含有抽象方法。抽象类和接口都不能创建对象。继承和实现接口或抽象类的子类必须实现接口或抽象类的所有的方
阅读全文
摘要:Java在8的版本,新增了Optional和lambda表达式,使得日常开发中对于NullPointException的判断变的优雅。 现在来个例子看看在Optional之前对空的判断。 如果层级更深的话,那就更难看一些... 看看通过Optional改造后的版本 没有了恼人的if判空,变的优雅很多
阅读全文