Java发展史

Java是什么

Java最早是由SUN公司(已被Oracle收购)的詹姆斯·高斯林(高司令,人称Java之父)在上个世纪90年代初开发的一种编程语言,最初被命名为Oak;在1995年以Java的名称正式发布,原因是Oak已经被人注册了。

java是面向对象程序设计语言,特别适用于Interent应用程序开发,它的最大特点就是“一次编译,到处运行”,并且能够在各种操作系统上运行,例如:windows,linux等。

Java名称由来

Java是印度尼西亚爪哇岛的英文名称,因盛产咖啡而闻名。Java语言中的许多库类名称,多与咖啡有关,如JavaBeans(咖啡豆)、NetBeans(网络豆)以及ObjectBeans (对象豆)等等。SUN和JAVA的标识也正是一杯正冒着热气的咖啡。Java自1995诞生,至今已经20多年的历史。

为什么学习Java

java可以说是无处不在,其市场占有率也在不断攀升。他已经吸收了全球最大的开发者队伍---500W+开发者这是全球最大最具活力的开发团队。

编程语言排行榜:

编程语言排行榜

https://hellogithub.com/report/tiobe/?url=/

Java发展历程

从1995年发布1.0版本开始,到目前为止,最新的Java版本是Java 15

时间 版本
1995 1.0
1998 1.2
2000 1.3
2002 1.4
2004 1.5 / 5.0
2005 1.6 / 6.0
2009 Oracle(甲骨文)收购
2011 1.7 / 7.0
2014 1.8 / 8.0
2017/9 1.9 / 9.0
2018/3 10
2018/9 11
2019/3 12
2019/9 13
2020/3 14
2020/9 15

Java语言构成

所谓java的构成,就是值java运行环境的组成,从核心到外围包括 JIT、JVM、JRE、JDK,四种区别如下:

  • JDK(Java Develop ToolKit):它里面有很多java所编写的开发工具(如:javac.exe、jar.exe),还包括了一个jre的调试环境。
  • JRE(Java Runtime Environment):是java运行的基础,它提供了java运行的API,Java程序必须有JRE才能正常运行。
  • JVM(Java Vitual Machine):它是java运行的虚拟机环境.
  • JIT(Java In Time):即java即时编译器,是JVM的一部分,属于内核部分。

其中的JVM是java运行的虚拟机环境,它是Java运行环境的重要一环。

关系图如下:


Java发展史
JVM

<style>

img{
width:50%;
height:35%;

}
table {
width: 100%; /表格宽度/
/max-width: 65em; 表格最大宽度,避免表格过宽/
border: 1px solid #dedede; /表格外边框设置/
margin: 15px 10px; /外边距/
border-collapse: collapse; /使用单一线条的边框/
empty-cells: show; /单元格无内容依旧绘制边框/
}
table th,
table td {
height: 20px; /统一每一行的默认高度/
border: 1px solid #dedede; /内部边框样式/
padding: 0 10px; /内边距/
}

table th {
font-weight: bold; /加粗/
text-align: center !important; /内容居中,加上 !important 避免被 Markdown 样式覆盖/
background: rgba(158,188,226,0.2); /背景色/
}
table tbody tr:nth-child(2n) {
background: rgba(158,188,226,0.12);
}
table tr:hover {
background: #efefef;
}
table th {
white-space: nowrap; /表头内容强制在一行显示/
}
table td:nth-child(1) {
white-space: nowrap;
}
[].slice.call(document.querySelectorAll('table')).forEach(function(el){
var wrapper = document.createElement('div');
wrapper.className = 'table-area';
el.parentNode.insertBefore(wrapper, el);
el.parentNode.removeChild(el);
wrapper.appendChild(el);
})
</style>

本文由博客一文多发平台 OpenWrite 发布!