[Java]-Java的版本演化
一、Java SE 8
Java SE 8发行于2014年3月18日,代号culture,这是一个在Java历史上的重大发布
Java SE 8 新特性:
- Lambda Expressions(Lambda表达式)
- Pipelines and Streams(管道和流)
- Date and Time API(日期和时间API)
- Default Methods(接口可以有默认方法)
- Type Annotations(类型注解)
- Nashhorn JavaScript Engine
- Concurrent Accumulators(并行累加器)
- Parallel operations(平行作业)
- PermGen Error Removed
- TLS SNI
二、Java SE 7
开发代号是Dolphin(海豚),于2011-07-28发行。
引入的新特性包括:
- switch语句块中允许以字符串作为分支条件;
- 在创建泛型对象时应用类型推断;
- 在一个语句块中捕获多种异常;
- 支持动态语言;
- 支持try-with-resources;
- 引入Java NIO.2开发包;
- 数值类型可以用2进制字符串表示,并且可以在字符串表示中添加下划线;
- 钻石型语法;
- null值的自动处理。
三、Java Version SE 6
开发代号为Mustang(野马),于2006-12-11发行。
引入的新特性包括:
- 支持脚本语言;
- 引入JDBC 4.0 API;
- 引入Java Compiler API;
- 可插拔注解;
- 增加对Native PKI(Public Key Infrastructure)、Java GSS(Generic Security Service)、Kerberos和LDAP(Lightweight Directory Access Protocol)的支持;
- 继承Web Services;
- 做了很多优化。
四、Java Version SE 5.0
开发代号为Tiger(老虎),于2004-09-30发行。
引入的新特性包括:
- 引入泛型;
- 增强循环,可以使用迭代方式;
- 自动装箱与自动拆箱;
- 类型安全的枚举;
- 可变参数;
- 静态引入;
- 元数据(注解);
- 引入Instrumentation。
五、J2SE Version 1.4
开发代号为Merlin(隼),于2004-02-06发行(首次在JCP下发行)。
引入的新特性包括:
- XML处理;
- Java打印服务;
- 引入Logging API;
- 引入Java Web Start;
- 引入JDBC 3.0 API;
- 引入断言;
- 引入Preferences API;
- 引入链式异常处理;
- 支持IPv6;
- 支持正则表达式;
- 引入Image I/O slot machine API。
六、J2SE Version 1.3
开发代号为Kestrel(红隼),于2000-05-08发行。
- 引入的新特性包括:
- 引入Java Sound API;
- jar文件索引;
- 对Java的各个方面都做了大量优化和增强。
七、J2SE Version 1.2
开发代号为Playground(操场),于1998-12-08发行。
引入的新特性包括:
- 引入集合(Collection)框架;
- 对字符串常量做内存映射;
- 引入JIT(Just In Time)编译器;
- 引入对打包的Java文件进行数字签名;
- 引入控制授权访问系统资源的策略工具;
- 引入JFC(Java Foundation Classes),包括Swing 1.0、拖放和Java 2D类库;
- 引入Java 插件;
- 在JDBC中引入可滚动结果集、BLOB、CLOB、批量更新和用户自定义类型;
- 在Applet中添加声音支持。
八、JDK Version 1.1
于1997-02-19发行。
引入的新特性包括:
- 引入JDBC(Java Database Connectivity);
- 支持内部类;
- 引入Java Bean;
- 引入RMI(Remote Method Invocation);
- 引入反射(仅用于内省)。
九、JDK Version 1.0
开发代号为Oak(橡树),于1996-01-23发行
原文[英]:http://javapapers.com/core-java/java-features-and-history/
中文转自:http://www.importnew.com/844.html 并添加了Java8
[Java]-Java的版本演化的更多相关文章
- Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/ma ven/cli/Maven/java与javac版本不一致问题
编译的时候 中出现如下异常: Exception in thread "main" Java.lang.UnsupportedClassVersionError: org/apac ...
- Java应用架构的演化之路
Java应用架构的演化之路 当我们架设一个系统的时候通常需要考虑到如何与其他系统交互,所以我们首先需要知道各种系统之间是如何交互的,使用何种技术实现. 1. 不同系统不同语言之间的交互 现 在我们常见 ...
- idea中编译项目报错 java: javacTask: 源版本 1.8 需要目标版本 1.8
问题如上面所叙: > idea中编译项目报错 java: javacTask: 源版本 1.8 需要目标版本 1.8 解决方案: > Setting->Compiler->Ja ...
- java各历史版本官网下载
java各历史版本官网下载: http://www.oracle.com/technetwork/java/javase/archive-139210.html
- Java平台标准版本
JDK Java Language Java Language Tools &Tool APIs java javac javadoc jar javap jdeps Script ...
- 编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本]
编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本] 1. 开发环境 Jdk 1.7.0_72 Maven 3.2.1 Scala 2.10.6 Spark 1.6 ...
- Java-Runoob-高级教程-实例-环境设置实例:4.Java 实例 – 如何查看当前 Java 运行的版本?
ylbtech-Java-Runoob-高级教程-实例-环境设置实例:4.Java 实例 – 如何查看当前 Java 运行的版本? 1.返回顶部 1. Java 实例 - 如何查看当前 Java 运行 ...
- Atitit.html解析器的选型 jsoup nsoup ,java c# .net 版本
Atitit.html解析器的选型 jsoup nsoup ,java c# .net 版本 1. 框架选型的要求1 1.1. 文档多1 1.2. 跨平台1 2. html解析器特性:1 2.1. j ...
- 问题002:我们要使用的Java是哪个版本的?什么是JVM、JRE、JDK、IDE、API?
三个版本:1.java SE 标准版 2.java EE企业版 3.Java ME 小型版本 JVM (java virtual machine) java虚拟机 JRE(java runtime e ...
- Java切换JDK版本的方法及技巧
由于项目的不同安排,之前项目开发时,使用的jdk版本为1.8,现临时接手一以前项目,需要更换jdk版本. 安装 不再赘述,去Oracle网站(https://www.oracle.com/techne ...
随机推荐
- Scrum Meeting 10.26
1.会议内容 姓名 今日任务 明日任务 预估时间(h) 徐越 学习服务器配置 配置SQLserver 4 卞忠昊 阅读代码 找上届代码的bug 3 武鑫 查阅资料 查阅资料,各种app的界面设计 3 ...
- [BUAA软工]第0次个人作业
[BUAA软工]第0次个人作业 本次作业所属课程 : 2019BUAA软件工程 本次作业要求: 第0次个人作业 我在本课程的目标: 熟悉软件工程流程,规范开发习惯 本次作业的帮助: 熟悉课程流程 Pa ...
- IIs8 svc
IIS8中添加WCF支持几种方法小结[图文] 方法一 最近在做Silverlight,Windows Phone应用移植到Windows 8平台,在IIS8中测试一些传统WCF服务应用,发现IIS8不 ...
- Leetcode题库——21.合并两个有序链表
@author: ZZQ @software: PyCharm @file: mergeTwoLists.py @time: 2018/9/16 20:49 要求:将两个有序链表合并为一个新的有序链表 ...
- “吃神么,买神么”的第一个Sprint计划
一.现状 我们这个团队刚接触网络网站的制作,前台后台的链接,数据库链接等还刚刚了解,在制作过程中药边学习边制作. 持着一个尽力做的心. 二.部分需求索引卡 主要的任务是把我们的主页面先大概做出来 三. ...
- User survey(用户调研)
郑文武——小学二年级学生 姓名 郑文武 性别.年龄 男.9岁 职业 学生 收入 父母给的零花钱 知识层次和能力 会使用手机 生活/工作情况 努力学习但数学成 ...
- 四则运算结对项目之GUI
本次结对编程让我学到了许多许多知识,受益匪浅!在此之前,我没想过我能做出一个双击运行的小程序. 感谢我的队友与我同心协力,感谢室友宇欣告诉我操作符为“最多多少”而不是“多少”并教我使用效能分析工具,感 ...
- PAT 甲级 1150 Travelling Salesman Problem
https://pintia.cn/problem-sets/994805342720868352/problems/1038430013544464384 The "travelling ...
- pygame入门
pygame入门 说明 在学习pygame时,主要参考了目光博客的教程.目光博客 原教程是2011年写的,年代比较久远了,使用Python2.我学习时使用python3将代码重新实现了一遍,同时补充了 ...
- [Oracle] 11.2.0.1 的客户端无法连接12.2.0.1 的DB端 28040
最近有一个应用服务器安装上了 11.2.0.1 的oracle DB端 又想当 客户端用来 注册 oracle12.2.0.1的DB端发现不行 但是很奇怪 报的错误竟然是 ora 01017 密码错误 ...