JavaSE:Java9 新特性

JavaSE:Java9 新特性1.Java9概述Java发布于2017年9月发布,带来了很多新特性,其中最主要的变化是模块化系统模块就是代码和数据的封装体,模块的代码被组织成多个包,每个包中包含java类和接口,模块的数据则

大家好,又见面了,我是你们的朋友全栈君。

1.  Java9概述

    Java发布于2017年9月发布,带来了很多新特性,其中最主要的变化是模块化系统

    模块就是代码和数据的封装体,模块的代码被组织成多个包,每个包中包含java类和接口,模块的数据则包括资源文件和其他静态信息

 

2.  模块化的使用

    <1>  语法格式

        在module-info.java文件中,我们可以用新的关键字module来声明一个模块。具体如下:
          

            module 模块名称 {

            }

 

    <2>  模块化的优势

          减少内存的开销

          可简化各种类库和大型应用的开发和维护

          安全性,可维护性,提高性能

 

    <3>  使用

<span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

<span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 故进行如下的操作

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

3.  钻石操作符<>的使用升级

    在Java9中,允许在匿名内部类的使用中,使用钻石操作符<>

    代码

              <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

 

4.  集合工厂方法

    <1>  基本概念

          Java9的List, Set 和 Map集合中,增加了静态工厂方法of,实现不可变实例的创建

          不可变体现在无法添加、删除和修改它们的元素

          不允许添加null元素对象

 

    <2>  实际意义

          保证线程安全:在并发程序中,既保证线程安全性,也大大增加了并发时的效率

          被不可信的类库使用时会很安全

          如果一个对象不需要支持修改操作,将会节省时间和空间的开销

          可以当作一个常量来对待,并且这个对象在以后也不会被改变

 

    <3>  代码

              <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

5.  InputStream的增强

      <1> InputStream类中,提供了transferTo() 方法,实现将数据直接传输到OutputStream中

                    <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

 

      <2> transferTo() 的内部

      <span role="heading" aria-level="2">JavaSE:Java9 新特性

 

 

        

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154294.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • visa仪表matlab,通过VISA接口获取安捷伦示波器捕获的波形

    visa仪表matlab,通过VISA接口获取安捷伦示波器捕获的波形CapturingawaveformfromanAgilentoscilloscopeoverastandardVISAinterfaceMATLABisasoftwareenvironmentandprogramminglanguagewithover1,000,000users.MATLABextendsthefunctionalityof…

    2022年10月12日
    7
  • 11. TranslateMessage[通俗易懂]

    11. TranslateMessage[通俗易懂]TranslanteMessage函数功能:TranslateMessage函数将虚拟键消息转换为字符消息,字符消息被寄送到当前线程的消息队列里。当下一次线程调用函数GetMessage或PeekMessage时被读出。API函数原型:BOOLWINAPITranslateMessage(_In_constMSG*lpMsg);参数解析:参数…

    2025年11月2日
    4
  • MATLAB 数组拼接

    MATLAB 数组拼接例如a=,b=横向拼接:c=[a,b]c=纵向拼接:c=[a;b]c=

    2022年6月11日
    114
  • Eclipse乱码怎么办

    Eclipse乱码怎么办Android与H5交互前言一.设置工作空间的编码前言在Eclipse中导入新的项目的时候,会遇到乱码的问题,而乱码的问题主要集中在中文的显示上。不过通过设置编码方式,看似十分恐怖的乱码问题也能够轻易解决。Eclipse设置编码的地方主要有三处,这三处的设置都会影响中文的显示。一.设置工作空间的编码编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置,每一个项目都会…

    2022年5月9日
    32
  • ya系列圆振动筛_L型厨房设计好不好

    ya系列圆振动筛_L型厨房设计好不好‘资料下载链接’:https://download.csdn.net/download/dwf1354046363/21778034YAH2460型圆振动筛设计摘要目前我国各种选煤厂使用的设备中,振动筛(筛分机)是问题较多、维修量较大的设备之一。这些问题突出表现在筛箱断梁、裂帮、稀油润滑的箱式振动器漏油、齿轮打齿、轴承温升过高、噪声过大等问题,同时伴有传动带跳带、断带等故障。这类问题直接影响了振动筛(筛分机)的使用寿命,严重影响了生产。YAH—2460型圆振动筛可以很好的解决此类问题,因此本

    2022年10月2日
    3
  • 【C#】Unity3D中的C#编程初级[通俗易懂]

    【C#】Unity3D中的C#编程初级[通俗易懂]一、前言这篇文章主要是给零基础想要Unity入门的关于C#编程的一些意见二、参考文章unity中的C#编程-零基础(Unity2017)三、正文1.什么是C#编程语言?微软官方出版2.编程工具(IDE)3.创建第一个C#代码4.场景的保存和脚本的保存5.关于日志输出(指控制输出,其中Log有三类:正常、警告、错误输出)6.变量7.方法的定义和调…

    2022年5月13日
    66

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号