#JDK 1.8 新特性
接口中的静态方法 只能由接口自己调用

接口中的默认方法 可以不被覆盖

#JDK 1.9 新特性(可能在JDK8中被忽略了,没来得及加)
接口可以定义私有方法,但是只能让自己调用,实现类不能调用

<>学名 钻石操作符
在定义匿名内部类时,这个钻石操作符可以使用类型推断
Comparator<Object> com = new Comparator<>(){...};

JDK 1.7中加了一个类型推断,所以有如下写法
ArrayList<String> list = new ArrayList<>;

java8中,可以实现资源的自动关闭,但是要求执行后必须关闭的所有资源必须在try子句中初始化,否则编译不通过。

java9的话,只要把要关闭的资源变量放在try的小括号中即可,但是在不能更改这个资源变量的值;

motivation 动机

String 不用 char[] 来存储,改成了byte[] 加上 编码标记,节约了一些空间

java9新特性 用集合工厂方法去创建只读集合
Collections.unmodifiableList(list);

标识接口,这种接口里面啥代码也没有,只起一个标识的作用

可以用of方法来创建只读集合
List.of(1,2,3,4,5);

Inputstream 可以使用 transferTo 直接将数据传输到OutputStream

在使用nosql时 stream api就非常实用了

Stream.of();
of参数不能存储单个null,否则会报错

于是jdk9中加了一个ofNullable(),只能放一个值

... 学名 可变形参

alt + / 快捷键自动补全

Nashorn 是一个Javascript引擎

2014 java8
2017.9 java9
2018.3 java10
2018.9 java11 LTS版
2019.3 java12

idea 18年的第三个版本

LTS是长期支持(Long Term Support)的缩写
长期支持稳定版

太多的类型声明只会分散注意力,不会带来额外的好处

# Java 10 的新特性

局部变量的类型推断
用var代替了,声明变量时,根据所附的值,推断变量的类型

copyOf()创建一个只读的集合

java11 提供了 两种新的GC Epsilon 和 ZGC(这一个GC是具有划时代意义的)

# java11
String 的.isBlank()、strip()方法

java11中废弃掉Nashorn引擎

experimental 实验的

stw(stop the world)

java flight recorder java飞行器

新的货币API
currency

JDK8~JDK11的新特性的更多相关文章

  1. JDK7和JDK8一些重要新特性

    jdk7新特性(部分) switch支持字符串 List AutoCloseable接口实现自动关闭,在try()中 新增获取环境信息的工具方法,getJavaHomeDir,getUserHomeD ...

  2. dk7和jdk8的一些新特性

    本文是我学习了解了j 的一些资料,有兴趣的大家可以浏览下下面的内容. 官方文档:http://www.oracle.com/technetwork/java/javase/jdk7-relnotes- ...

  3. JDK8中的新特性

    1.lambda表达式 1.定义 Java 8 发布的最重要新特性.Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中),可以推导出来的就可以省略了,Lambda 表达式免去了使用匿 ...

  4. JDK8之Stream新特性

    https://www.cnblogs.com/cbxBlog/p/9123106.html /** *JDK8 Stream特性 * Created by chengbx on 2018/5/27. ...

  5. JDK11&12 新特性学习

  6. jdk8新特性(文章推荐)

    文章推荐 jdk9都已经出来了,虽然很多项目都已经使用jdk8,但是很少会用到jdk8中的新特性.本人经常用的到也就是使用Stream,Lambda,但也仅仅是使用,基本不知道什么Function,C ...

  7. JDK8的新特性——Lambda表达式

    JDK8已经发布快4年的时间了,现在来谈它的新特性显得略微的有点“不合时宜”.尽管JDK8已不再“新”,但它的重要特性之一——Lambda表达式依然是不被大部分开发者所熟练运用,甚至不被开发者所熟知. ...

  8. jdk8新特性(详解)

    最近在复习外加看点面试题,jdk8的新特性虽然在项目用用到过一两个,准备系统的了解一下jdk8的常用新特性 一:Lambd表达式 也可称为闭包         引入函数式编程到Java中 为了使现有函 ...

  9. JDK8中接口的新特性

    在JDK8环境中,接口中的方法不再是只能有抽象方法,还可以有静态方法和default方法.实现类只需要实现它的抽象方法即可,JDK8中的接口有愈发向抽象类靠拢的感觉. 关于静态方法和默认方法作如下简述 ...

随机推荐

  1. php 高级 多台web服务器共享session的方法

    解决多台web服务器共享session的问题,至少有以下三种方法:   一.将本该保存在web服务器磁盘上的session数据保存到cookie中 即用cookie会话机制替代session会话机制, ...

  2. Python - 代码片段,Snippets,Gist

    说明 代码片段来自网上搬运的或者自己写的 华氏温度转摄氏温度 f = float(input('请输入华氏温度: ')) c = (f - 32) / 1.8 print('%.1f华氏度 = %.1 ...

  3. 如果你是新晋的leader, 你可能需要了解这些。

    背景 在职业发展的道路上,我们总会面临这样的抉择: 是在技术的路上一条路走到黑,做技术专家 接触管理, 走上管理 年龄大了,搬砖没人要,转型 or 去公司楼下卖炒粉 我曾经有个小小的愿望: 在毕业5年 ...

  4. HDU1029 简单DP

    "OK, you are not too bad, em... But you can never pass the next test." feng5166 says. &quo ...

  5. k种球若干,取n个球,输出所有取球方案 (模拟)

    有K种颜色的小球(K<=10),每种小球有若干个,总数小于100个. 现在有一个小盒子,能放N个小球(N<=8),现在要从这些小球里挑出N个小球,放满盒子. 想知道有哪些挑选方式.注:每种 ...

  6. Android音频录制MediaRecorder之简易的录音软件实现代码(转)

    原文:http://www.jb51.net/article/46182.htm Android音频录制MediaRecorder之简易的录音软件实现代码 这篇文章主要介绍了Android音频录制Me ...

  7. 执行SQL时出现: ORDER BY clause is not in GROUP BY clause and contains nonaggregated c

    注意: 采用navicat新建数据库时,需要将编码方式设置为,字符集:utf8 -- UTF-8 Unicode ,排序规则:utf8_general_ci 在运行sql语句时,出现以下问题: [Er ...

  8. 获取Webshell方法总结

    一.CMS获取Webshell方法 搜索CMS网站程序名称 eg:phpcms拿webshell.wordpress后台拿webshell 二.非CMS获取Webshell方法 2.1数据库备份获取W ...

  9. System.Diagnostics.Conditional 的妙用 -- 把文档放在代码中

    最近的工作跟 UI 打交道比较多, 各种坑. 今天从 Prefab 的序列化功能来说说 System.Diagnostics.Conditional 的妙用. 我们做 UI 面对各种按钮, 组件的获取 ...

  10. app自动化 - 元素定位不到?别慌,3大工具帮你搞定!

    在日常的android app自动化测试工作当中,很多朋友在元素定位时,会遇到以下类似的报错: 然后会来问,这是啥情况? 一般情况下,都会送上以下亲切的关怀: 1)adb能识别到设备吗? 2)设备有被 ...