没有合适的资源?快使用搜索试试~ 我知道了~
尚硅谷_宋红康_深入解读Java12&13新特性1
需积分: 0 0 下载量 43 浏览量
2022-08-03
13:52:00
上传
评论
收藏 4.91MB PDF 举报
温馨提示
试读
55页
一、关于Java生态圈 二、Java 老矣,尚能饭否 三、JDK 各版本主要特性
资源详情
资源评论
资源推荐
typora-copy-images-to: 尚硅谷
宋
红
康
深入解读Java12&13新特性_配图
深入解读 Java 12 & 13 新特性
讲师:宋红康
微博:尚硅谷宋红康
一、关于Java生态圈
Java是目前应用最为广泛的软件开发平台之一。随着Java以及Java社区的不断壮大,Java 也早已不再是简简单单的一
门计算机语言了,它更是一个平台、一种文化、一个社区。
作为一个平台,Java虚拟机扮演着举足轻重的作用。除了 Java语言,任何一种能够被编译成字节码的计算机语言都属
于Java这个平台。Groovy、Scala、 JRuby、Kotlin等都是Java平台的一部分,它们依赖于Java虚拟机,同时,Java平
台也因为它们变得更加丰富多彩。
作为一种文化,Java几乎成为了 “开源”的代名词。在Java程序中,有着数不清的开源软件和框架。如Tomcat、Struts,
Hibernate, Spring等。就连JDK和JVM自身也有不少开源的实现,如OpenJDK、Apache Harmony。可以说,“共
享”的精神在Java世界里体现得淋漓尽致。
作为一个社区,Java拥有全世界最多的技术拥护者和开源社区支持,有数不清的论坛和资料。从桌面应用软件、嵌入
式开发到企业级应用、后台服务器、中间件,都可以看到Java的身影。其应用形式之复杂、参与人数之众多也令人咋
舌。可以说,Java社区已经俨然成为了一个良好而庞大的生态系统。其实这才是Java最大的优势和财富。
二、Java 老矣,尚能饭否?
看看最新的TIOBE 社区的语言热度排行榜:
2.1 Java 是最好的语言吗?
不是,因为在每个领域都有更合适的编程语言。
C 语言无疑是现代计算机软件编程语言的王者,几乎所有的操作系统都是 C 语言写成的。C++ 是面向对象的 C
语言,一直在不断的改进。
JavaScript 是能运行在浏览器中的语言,丰富的前端界面离不开 Javascript 的功劳。近年来的 Node.js 又在后端
占有一席之地。
Python 用于系统管理,并通过高性能预编译的库,提供 API 来进行科学计算,文本处理等,是 Linux 必选的解
释性语言。
Ruby 强于 DSL(领域特定语言),程序员可以定义丰富的语义来充分表达自己的思想。
Erlang 就是为分布式计算设计的,能保证在大规模并发访问的情况下,保持强壮和稳定性。
Go 语言内置了并发能力,可以编译成本地代码。当前新的网络相关项目,很大比例是由 Go 语言编写的,如
Docker、Kubernetes 等。
编写网页用 PHP,函数式编程有 Lisp,编写 iOS 程序有 Swift/Objective-C。
一句话概括,能留在排行榜之上的语言,都是好的语言,在其所在的领域能做到最好。
2.2 Java 语言到底有什么优势?
其一,语法比较简单,学过计算机编程的开发者都能快速上手,Java是一门极好的初学者入门语言。和C/C++相比,
Java在设计上有着绝对的优势,开发 人员可以尽快从语言本身的复杂性中解脱出来,将更多的精力投向软件自身的业
务功能。
其二,在若干领域都有很强的竞争力,比如服务端编程,高性能网络程序,企业软件事务处理,分布式计算,
Android 移动终端、嵌入式设备应用开发等等。
最重要的一点是符合工程学的需求,我们知道现代软件都是协同开发,那么代码可维护性,编译时检查,较为高效的
运行效率,跨平台能力,丰富的 IDE,测试,项目管理工具配合。都使得 Java 成为企业软件公司的首选,也得到很
多互联网公司的青睐。
其三,没有短板,容易从市场上找到 Java 软件工程师。软件公司选择 Java 作为主要开发语言,再在特定的领域使用
其他语言协作编程,这样的组合选择,肯定是不会有大的问题。
所以综合而言,Java 语言全能方面是最好的。
随着 Java 每半年更新一次的脚步,Java 的新版本中也出现了越来越多与其他语言相似的特性,博采众长的 Java,还
能继续保持生机。
但是,Java在不少地方依然受到了广大开发人员的诟病,它烦琐的语法经常受到Python等开发人员的耻笑。在语言
的动态性上,甚至也远远不如和它年龄相仿的PHP语言。 但为了支持动态语言,Java虚拟机推出了新的函数调用指令
invokedynamic ,试图弥补Java在动态调用上的不足。
三、JDK 各版本主要特性
JDK Version 1.0
1996-01-23 Oak(
橡树
)
JDK Version 1.1
1997-02-19
JDK Version 1.2
1998-12-08 Playground(
操
场
)
初代版本,伟大的一个里程碑,但是是纯解释运行,使用外挂JIT,性能比较差,运行速度慢。1
JDBC(Java DataBase Connectivity);
支持内部类;
RMI(Remote Method Invocation) ;
反射;
Java Bean;
1
2
3
4
5
6
7
8
9
同时,Sun发布了 JSP/Servlet、EJB规范,以及将Java分成了 J2EE、J2SE和J2ME。 这表明了 Java开始向企业、桌面
应用和移动设备应用3大领域挺进。
JDK Version 1.3
2000-05-08 Kestrel(
红
隼
)
此时,Hotspot虚拟机成为Java的默认虚拟机。
JDK Version 1.4
2002-02-13 Merlin(
隼
)
集合框架;
JIT(Just In Time)编译器;
对打包的Java文件进行数字签名;
JFC(Java Foundation Classes), 包括Swing 1.0, 拖放和Java2D类库;
Java插件;
JDBC中引入可滚动结果集,BLOB,CLOB,批量更新和用户自定义类型;
Applet中添加声音支持.
1
2
3
4
5
6
7
8
9
10
11
12
13
Java Sound API;
jar文件索引;
对Java的各个方面都做了大量优化和增强;
1
2
3
4
5
断言;
XML处理;
Java打印服务;
Logging API;
Java Web Start;
JDBC 3.0 API;
Preferences API;
链式异常处理;
支持IPV6;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
同时,古老的Classic虚拟机退出历史舞台。
一年后,Java平台的Scala正式发布,同年Groovy也加入了 Java阵营。
JAVA 5
2004-09-30 Tiger(
老
虎
)
同时JDK 1.5改名为J2SE 5.0。
JAVA 6
2006-12-11 Mustang(
野马
)
同年,Java开源并建立了 OpenJDK。顺理成章,Hotspot虚拟机也成为了 OpenJDK中的默认虚拟机。
2007年,Java平台迎来了新伙伴Clojure。
2008 年,Oracle 收购了 BEA,得到了 JRockit 虚拟机。
2009年,Twitter宣布把后台大部分程序从Ruby迁移到Scala,这是Java平台的又一次大规模应用。
支持正则表达式;
引入Image I/O API
19
20
21
类型安全的枚举;
泛型;
自动装箱与自动拆箱;
元数据(注解);
增强循环,可以使用迭代方式;
可变参数;
静态引入;
Instrumentation;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
支持脚本语言;
JDBC 4.0API;
Java Compiler API;
可插拔注解;
增加对Native PKI(Public Key Infrastructure), Java GSS(Generic Security
Service),Kerberos和LDAP(Lightweight Directory Access Protocol)支持;
继承Web Services;
1
2
3
4
5
6
7
8
9
10
11
剩余54页未读,继续阅读
首席程序IT
- 粉丝: 30
- 资源: 305
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Pytorch训练CIRAR10上分类算法.zip
- Pytorch-pytorch深度学习教程之Tensorboard.zip
- 基于C++和Python开发yolov8-face作为人脸检测器dlib作为人脸识别器的人脸考勤系统源码+项目说明.zip
- Pytorch-pytorch深度学习教程之变分自动编码器.zip
- Pytorch-pytorch深度学习教程之神经风格迁移.zip
- Pytorch-pytorch深度学习教程之深度残差网络.zip
- Pytorch-pytorch深度学习教程之循环神经网络.zip
- Pytorch-pytorch深度学习教程之逻辑回归.zip
- Pytorch-pytorch深度学习教程之双向循环网络.zip
- Pytorch-pytorch深度学习教程之卷积神经网络.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0