#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. C/C++网络编程10——I/O复用服务器端实现select方式

    #include <iostream> #include <cstdlib> #include <string> #include <cstring> ...

  2. 了解Web的相关知识

    一.WWW基础 WWW(world wide web, 万维网)是Internet上基于客户端/服务器体系结构的分布式多平台的超文本超媒体信息服务系统.它利用超文本(hypertext).超媒体(hy ...

  3. 2020.02.28 Linux 命令

    Cat   语法格式 cat [-AbeEnstTuv] [--help] [--version] fileName 参数说明: -n 或 --number:由 1 开始对所有输出的行数编号. -b ...

  4. 四 Spring的工厂类,xml的配置

    Spring工厂类的结构图: BeanFactory:老版本的工厂类 BeanFactory:调用getBean的时候,才会生产类的实例 ApplicationFactory:新版本的工厂类 加载配置 ...

  5. Spring源码试读--BeanFactory模拟实现

    动机 现在Springboot越来越便捷,如果简单的Spring应用,已无需再配置xml文件,基本可以实现全注解,即使是SpringCloud的那套东西,也都可以通过yaml配置完成.最近一年一直在用 ...

  6. Ionic3记录之核心代码分析

    app.module.ts app的根模块,一些插件的引用需要在这里声明,告诉APP如何组装应用: app.componet.ts app的根组件,主要用来APP启动时和启动后的操作;

  7. 【PAT甲级】1011 World Cup Betting (20 分)

    题意: 给出三组小数,每组三个,分别代表一场比赛下注一块钱胜平负的赔率.输出投注的方案并计算投注两块钱期望收获.(赔率相乘后乘上0.65再减去本金2块钱) AAAAAccepted code: #in ...

  8. C++中的可调用对象

    在C++中,常常会利用函数来简化程序流程.函数的存在使得C++整体更加“模块化”,因而也使得代码可读性大大提高. 在C++程序中,常常会很灵活地调用函数来实现不同的功能与目的(函数重载.继承多态等等) ...

  9. CDC学习

    最近在建立CDC环境,在网上看到一些不错的学习链接,粘贴如下: 1.https://blog.csdn.net/u011729865/article/details/52931366 属于https: ...

  10. 好用的log打印类

    package com.huawei.network.ott.weixin.util; import android.util.Log; public final class DebugLog { / ...