java基础第八篇之jdk1.五、jdk1.七、jdk1.8新特性

JDK5新特性java

 

自动装箱和拆箱程序员

泛型设计模式

加强for循环安全

静态导入架构

可变参数加密

枚举设计

 

 

枚举概述对象

是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内。举例:一周只有7天,一年只有12个月等。接口

回想单例设计模式:单例类是一个类只有一个实例ip

那么多例类就是一个类有多个实例,但不是无限个数的实例,而是有限个数的实例。这才能是枚举类

 

java就提供了枚举类供咱们使用。

格式是:只有枚举项的枚举类

public enum 枚举类名 {

枚举项1,枚举项2,枚举项3…;

}

 

注意事项

定义枚举类要用关键字enum

全部枚举类都是Enum的子类

枚举类的第一行上必须是枚举项,最后一个枚举项后的分号是能够省略的,可是若是枚举类有其余的东西,这个分号就不能省略。建议不要省略

枚举类能够有构造器,但必须是private的,它默认的也是private的。枚举项的用法比较特殊:枚举(“”);

枚举类也能够有抽象方法,可是枚举项必须重写该方法

枚举在switch语句中的使用

 

 

枚举类中的几个常见方法

 

int compareTo(E o)

String name()

int ordinal()

String toString()

<T> T valueOf(Class<T> type,String name)

values() 

此方法虽然在JDK文档中查找不到,但每一个枚举类都具备该方法,它遍历枚举类的全部枚举值很是方便

 

 

JDK7新特性

 

二进制字面量

数字字面量能够出现下划线

switch 语句能够用字符串

泛型简化

异常的多个catch合并

try-with-resources 语句

 

 

二进制字面量

 

JDK7开始,终于能够用二进制来表示整数(byte,short,int和long)。使用二进制字面量的好处是,可使代码更容易被理解。语法很是简单,只要在二进制数值前面加 0b或者0B

举例:

int x = ob110110

 

数字字面量能够出现下划线

 

为了加强对数值的阅读性,如咱们常常把数据用逗号分隔同样。JDK7提供了_对数据分隔。

举例:

int x = 100_1000;

注意事项:

不能出如今进制标识和数值之间

不能出如今数值开头和结尾

不能出如今小数点旁边

 

try-with-resources 语句

 

格式:

try(必须是java.lang.AutoCloseable的子类对象){…}

好处:

资源自动释放,不须要close()了

把须要关闭资源的部分都定义在这里就ok了

主要是流体系的对象是这个接口的子类(看JDK7的API)

 

Java SE 8 有哪些主要特性?

 

? Lambda表达式,一种新的语言特性,可以使功能做为方法参数或将代码做为数据;

 

? 显著增长和完善Java语言特性,增添标准库,包括默认方法,新的java.util.stream包及 Date-Time API;

 

? Compact Profiles包含 Java SE平台预约义子集,使程序员无需部署在整个平台,可运行在小型设备上;

 

? 安全性包括更新可Java加密体系架构;限制doPrivileged;SSL/TLS Server Name Indication (SNI) Extension以及加强密钥库;

 

? JavaFX更新文档

 

? 新的JavaScript引擎Nashorn

相关文章
相关标签/搜索