1. 二进制数值表达方法,可以加前缀 0b 或者 0B,来表达byte, short,int和long。 这个是和之前的十六进制表达方式 0x 或 0X 是相对应的。
byte b = (byte)0b00100001;
int i = 0b101;
2. 数值中间可以用下划线断开,例如
long creditCardNumber = 1234_5678_9012_3456L;
float pi = 3.14_15F;
但是下划线不能再开头,结尾,或者 F, L的前面
3. 泛型定义时可以自动推断出来,但是 <>这个符号是不能少的。
比如
Map<String, List<String>> myMap = new HashMap<String, List<String>>();
可以写成:
Map<String, List<String>> myMap = new HashMap<>();
4. try-with-resources。 resource必须是 java.lang.AutoCloseable。会自动调用它的close()方法。
try (BufferedReader br = new BufferedReader(new FileReader(path))) {
br.readLine();
}
也可以同时声明多个resource:
try (BufferedReader br = new BufferedReader(new FileReader("path"));
BufferedReader br2 = new BufferedReader(new FileReader("path"))) {
br.readLine();
}
也可以用在JDBC的 Statement上
try (Statement stmt = cn.createStatement()) {
ResultSet rs = stmt.executeQuery("SELECT * FROM table1");
}
5.同时捕获多个Exception
try{
...
} catch (IOException ex) {
...
}catch (SQLException ex) {
...
}
可以这样写了
try{
...
} catch (IOException|SQLException ex) {
...
}
6. 新的文件读写包 java.nio.file。比之前的java.io.File强大不少。 常用的有 Files, Paths
Paths:用来生成一个实现Path接口的实现类。由于jvm运行的平台不同,会得到不同的Path实现类。
Files:具体对文件进行操作的类,包括复制文件,创建目录,创建文件,创建连接,删除文件,获取文件的BufferReader,BufferWriter,InputStream,OutputStream,以字节和字符串形式读取文件,写入文件内容等等
7. fork/join 框架,基于 ForkJoinPool 类,它是 Executor 接口的实现,设计它用来进行高效的运行大量任务;ForkJoinTask代表一个需要执行的任务,真正执行这些任务的线程是放在一个线程池(ForkJoinPool)里面。它可以把一个大的任务划分为若干个小的任务并发执行,充分利用可用的资源,进而提高应用的执行效率。采用work-stealing 的方式,比ExcuteService更高效。
8. 新的垃圾回收器G1,可以替代之前的 CMS ( Concurrent Mark-Sweep Collector)
相关推荐
Java 7是Java编程语言的一个重大更新,发布于2011年,它引入了许多新的特性和改进,旨在提升开发者的效率和代码的可读性。...《深入理解Java7》这本书应该会详细阐述这些内容,帮助你全面掌握Java 7的精髓。
Java新特性学习 Jlayer是一个适用于Swing组件的灵活而强大的组件装饰器。提供了用来装饰多个组合组件的方式,并且可以捕获所有鼠标、键盘和FocusEvent的事件,并针对所有的XLayer子组件。这个组件只会对public swing...
JAVA 7 新特性 —— 异常处理升级 JAVA 7 中引入了多个新特性,其中之一是异常处理升级。在 Java 7 中,catch 代码块得到了升级,可以在单个 catch 块中处理多个异常。这种特性可以减少代码重复度,并生成更少的...
以下是一些主要的Java8新特性详解: 1. **Lambda表达式**:Lambda表达式是Java8中最显著的新特性,它为Java引入了函数式编程的概念。Lambda允许将函数作为一个方法参数,或者存储在变量中。这种简洁的语法让多线程...
以下是一些主要的Java 8新特性详解: 1. **Lambda表达式**:这是Java 8最显著的新特性之一,它为Java引入了函数式编程的概念。Lambda表达式允许我们将函数作为方法参数或者存储在变量中,使得代码更加简洁、易读。...
第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7版)第7章 Java语言类的特性(第7...
自 Java 8 发布后,Java 有了许多显著的新特性,极大地提升了开发效率和代码质量。以下是对 Java 8 及之后版本主要新特性的深入剖析: 1. **Lambda 表达式**: Java 8 引入了 Lambda 表达式,使得函数式编程成为...
### Java 7新特性中文介绍 #### 一、概述 随着Java 7的发布,业界迎来了一次重大的技术革新。作为一款原本就极其强大的编程语言,Java在Oracle的重组之后,不仅保持了其原有的优势,还增添了许多令人期待的新特性...
Java 异常处理新特性是在 Java7 中引入的一种新的异常处理机制,它提供了一种更加简洁、可靠的方式来处理资源使用异常。这种机制称为 try-with-resources,实际上是自动调用资源的 close() 函数,从而实现资源的自动...
### Java 9 新特性大全详解 #### 一、概述 Java 9 是 Oracle 在 2017 年 7 月发布的重大版本更新,它不仅引入了许多令人兴奋的新功能和改进,还对 Java 平台的整体架构进行了优化。本文将详细介绍 Java 9 中的关键...
以下是关于Java 8新特性的详细讲解: 1. **函数式编程:Lambda表达式** Lambda表达式是Java 8中最显著的新特性,它允许我们将函数作为一个方法参数,或者以匿名函数的形式创建。Lambda表达式简洁且易于理解,使得...
以下是一些主要的新特性: 1. **动态语言支持**:Java SE 6引入了JSR 223,即脚本引擎接口,使得Java平台可以支持多种动态编程语言,如JavaScript、Groovy和Ruby。这使得Java开发者能够利用这些语言的灵活性,同时...
9. **改进的字符串处理**:Java 9提供了一些新的字符串方法,如`strip()`, `stripIndent()`, `isBlank()`等,以简化字符串的清理和检查操作。 10. **G1垃圾收集器优化**:Java 9对G1垃圾收集器进行了优化,提升了...
以下是对Java 8新特性的详细总结: **一、Lambda表达式** Lambda表达式是Java 8的核心特性之一,它允许将函数作为一个方法的参数,从而实现函数式编程的风格。Lambda表达式的语法如下: ```java (parameters) -> ...
Java 7,全称为Java SE 7 (Java Platform, Standard Edition 7),是Java编程语言的一个重大更新,它在2011年发布,引入了一系列的新特性,旨在提高开发效率,增强程序性能,并且简化某些编程任务。让我们深入探讨...
之后,《新手学java7编程(第5版)》介绍了java的一些高级特性,包括多线程程序设计和泛型。最后以对swing的介绍结束了全书。本教程节奏轻快,可以帮助读者快速掌握java程序设计。 《新手学java 7编程(第5版)》特色 ...
【Java 17新特性详解含示例代码】 Java 17作为Java的最新版本,引入了一系列提升开发效率、性能和开发体验的新特性。以下是Java 17的主要新特性及其实现方式: 1. **增强的伪随机数生成器 (JEP 356)** Java 17...
Java 1.7,也被称为Java 7,是Java编程语言的一个重要版本,它引入了许多新的特性和改进,旨在提高开发效率、增强可读性和简化编程任务。在本篇文章中,我们将深入探讨Java 7的一些核心特性,并通过实际代码示例来...
oracle大学java的新特征,讲了一些新的东西,只是ppt课件
Java 5 和 Java 6 是两个重要的 Java 发行版本,它们引入了一系列的新特性和改进,极大地提升了开发效率和代码质量。下面将详细讲解这两个版本的关键特性。 Java 5: 1. **泛型**:泛型允许在类、接口和方法中使用...