Java8 特性小试

Java8已经发布好几星期了,天天看新闻都是这的那的,虽然不会这么快用到实际项目上,但还是先看看有哪些东西应用上去之后会更给力的?

发布页面上极大力度强调了 J2me8 和 JavaFx8 方面的改进,但感觉市场已失,就不多关注了,简单看一下其它特性

Java8特性第一感

  1. Lambda表达式看上去很炫,使用起来应该可以结省很多class文件,如果项目里面有很多new子接口的如new Thread,new Linster等的,用Lambda的写法应该可以好看很多,且不只是好看,Lambda语法有闭包特性,貌似还可以根据上下文联想,不用声明类型。
  2. java.time(JSR310)包,由于最老使用的Date很多方法老提示过期不建议使用,Calendar用起来感觉也挺繁琐,这个包里面的一些API应该是个不错的替代品,毕竟是升级版嘛,如果你已经用了java8,建议使用这些API做为你相关时间操作的基类。
  3. functionInterface、Method and Constructor References,嗯,好吧,我是比较低端的程序员不过看例子有个forEach的方法可以循环,就像jQurey里面的forEach一样,估计可以改进很多需要循环执行的方法。虽然还没用过但应该可以确定如果用的恰当,代码应该更好看,更能体现面向对象的思想。
  4. Annotations and Access to Parameter Names,又是一个高端的玩意,其实感觉平时写代码时用到Annotation的场景都很少了,还多重注解,不过这个功能给那些写灵活度比较高的低层框架什么的有可能用到,也是增加可读性的。
  5. 其它杂七八,还没太了解,不多评价~~

总的来说,是一个很大的版本,改动量大,升级到java8后可以使用一些新的语法及Lambda表达式能减少你的代码行数,以及增加代码的可读性。性能也会有一点提升。

阅读更多