专业的JAVA编程教程与资源

网站首页 > java教程 正文

Java9的新特性(根据对顾客满意的影响程度不同一般可将质量特性分为)

temp10 2024-09-11 09:15:01 java教程 8 ℃ 0 评论

前言

话说Java9的出来了这么久,也一直没有机会去好好的了解了解,忙里偷闲,去官网上翻了翻doc,然后看了几篇文章,自己稍微整理了一下,分享一些自己比较中意的新特性看法,希望能够帮助到一些志同道合的童鞋。

新特性

  • JShell

    Java9的新特性(根据对顾客满意的影响程度不同一般可将质量特性分为)

哦哟,这个说起来就厉害了,入Java的坑也算有些年头了,这些年习惯了C++或者Java的编程模式:编辑、保存、编译、运行和调试,一接触到类似Ruby On Rails的时候,就感觉很幸福,毕竟他提供的应用控制台能够以交互的模式去运行应用,做一些临时性的操作就会很方便,这类就叫做交互式编程。终于让我们值得欢呼的就是现在Java也支持了交互式编程环境,从控制台直接启动jshell,输入执行Java代码,测试一些东西的时候是不是相当的方便,而且,再也不要教别人撸Java的时候告诉他public static void main是干啥的啦,哈哈哈哈哈

  • 改进的Stream API

一直一来Java标准库都在改进这个API,细心的打字员可能早已经发现,这些年Java越来越重视函数式编程,Java8里面就扩充了很多的新功能。毕竟函数式编程代码简洁明了,而且编写并行程序非常的简单。关于Stream的使用方法这里不做展开描述,大家只需要知道Stream并不是某种数据结构,它只是数据源的一种视图。这里的数据源可以是一个数组,Java容器或I/O channel等。

接下来看一个小程序,控制台打印1到99:

IntStream.iterate(1, i -> i < 100, i -> i + 1).forEach(System.out::println);

如上所示,iterate 方法的新重载方法,提供了一个判断条件什么时候结束迭代,第二个参数则是一个Lambda,当元素到达100的时候返回true,用起来简直不要太爽哟。

  • 私有接口方法

还有一个值得一提的就是Java9中可以向接口添加私有辅助方法,因为当接口中有几个默认方法且代码相同的时候,我们通常会进行重构然后把方法私有化,使其可复用。但是默认方法是不能私有的。

官方的示例中很好的描述了这种情况:

public interface MyInterface {
 void normalInterfaceMethod();
 default void interfaceMethodWithDefault() { init(); }
 default void anotherDefaultMethod() { init(); }
 // This method is not part of the public API exposed by MyInterface
 private void init() { System.out.println("Initializing"); }

当我们在项目中大批量使用默认方法开发API的话,那么私有接口方法可以帮助我们快速的进行构建。

  • 集合工厂方法

这几年Java对开发者越来越友好,Jva9中添加了集合工厂方法,比如Set.of以及List.of方法,这是一个高度优化的过程,而且,实例化集合,我们通常要用到几个add,代码重复度较高,有兴趣的童鞋可以去尝试尝试。

结语

酒香不怕巷子深,虽然这些年对Java一直处于又爱又恨的程度,虽然使用Java开发之前曾立过“坚持不用辣鸡Java”的誓言,但是不得不承认,时代在进步,每一种语言都在朝各自擅长的领域继续奔跑着,还是那句话,人生苦短我用python,给我再来一次的选择,我选js。(逃

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表