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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • OleDbCommand OleDbDataAdapter比较研究素材

    OleDbCommand OleDbDataAdapter比较研究素材转载地址:http://blog.sina.com.cn/s/blog_43eb83b901017fy6.html致谢!——————————————————————————————————-为什么使用OleDbCommand时OleDbConn…

    2022年5月19日
    30
  • 字符串长度函数strlen()。。字符串函数头文件string.h「建议收藏」

    百度知道看到的string.h头文件里常用的函数有:strlen求字符串长度。strcmp比较2个字符串是否一样。strcat字符串连接操作。strcpy字符串拷贝操作。strncat字符串连接操作(前n个字符)。strncpy字符串拷贝操作(前n个字符)。strchr查询字串。strstr查询子串。string.h是C语言里面关于字符数组的函数定义的头文件,更详细的可以到i…

    2022年4月8日
    47
  • Integer比较

    Integer比较

    2022年1月5日
    54
  • nginx作为反向代理的特性_ssh 反向代理

    nginx作为反向代理的特性_ssh 反向代理文章目录问题描述解决方案sub_filter方案使用重定向单独域名访问问题描述现在的企业服务,往往不是单体的,同时可能涉及中间件的访问如dubbo、solr、mq等。对于中间件的监控页面访问,如果直接暴露在公网,肯定这安全。需发对中间件访问进行安全加固,方法主要有:(1)限制使用IP白名单访问。(2)安全密码访问,不使用简单密码,对于没有密码的,可以使用basic认证,强密码访问。(3)…

    2022年9月17日
    0
  • strstr(str1,str2)函数使用时注意事项

    strstr(str1,str2)函数使用时注意事项可能有的人还没听过strstr函数,个人认为这个一个很实用的函数,strstr(str1,str2)函数是字符串处理函数之一,位于头文件“string.h”中。对于处理字符串的一些问题有很大的帮助。定义:strstr(str1,str2)函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。定义说的有点羞涩难懂。举个例子就…

    2022年6月25日
    33
  • 【树莓派】一根网线将树莓派4B直连笔记本电脑的方法

    【树莓派】一根网线将树莓派4B直连笔记本电脑的方法当我们为新买来的树莓派刷上系统之后,如何将树莓派和笔记本电脑连接到同一网络使用SSH工具登录树莓派呢?相信大多数人的做法是将树莓派连接到路由器上,然后通过SSH工具(putty,SecureCRT等)远程登录,但如果你没有显示器和HDMI线,那么,这里介绍如何使用一根网线来连接树莓派。准备材料1、树莓派2、已经刷入系统的SD卡3、一根网线4、一个已经连接互联网的笔记本5、usb网口…

    2022年6月5日
    39

发表回复

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

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