什么是 Java?
一、背景介绍
众所周知,Java 经过多年的发展,已经从一门单纯的计算机编程语言,发展成了一套成熟的软件解决方案。从互联网到企业平台,Java 是目前使用最广泛的编程语言。
以下这段内容是来自 Java 的官方介绍!
从笔记本电脑到数据中心,从游戏控制台到科学超级计算机,从手机到互联网,Java 无处不在!
据不完全统计,全球有25亿电子器件运行着 Java,450多万 Java 开发者活跃在 web 应用以及安卓市场上,有7.08亿部手机、10亿个智能卡和7亿部 PC 机上运行着 Java 应用程序,越来越多的企业因为使用了 Java 而提高了生产效率,我想这大概就是为什么 Java 被称为世界第一的开发语言的原因吧~~
无论是是互联网公司还是传统的企业,在研发数字化平台系统时,世界上绝大部分的公司基本上都会首选采用 Java 来开发,原因就不多说了,安全、稳定、高性能、跨平台等等。
二、Java 发展史
Java 最早是由 SUN 公司的一个小工程师团队在上个世纪 90 年代初开发的一种编程语言,其中詹姆斯·高斯林是项目负责人(人称 Java 之父),编程语言最初被命名为 Oak,以他们的办公室外的橡树而命名,后来因为 Oak 已经被人注册了,因此重新改名成 Java。
在此,我们附上一张 Java 之父的光辉图片!
当时的目标是将其用于开发数字有线电视行业的嵌入式应用程序,例如机顶盒、智能电视等数字设备,实现无障碍的运行。结果推出以后,市场没啥反响。4 年后,技术小组不得不解散。
但也就在此时,互联网刚刚崛起,恰巧这时 MarkArdreesen 开发的 Mosaic 和 Netscape 启发了 Oak 项目组成员,他们利用 Java 编写了 HotJava 浏览器,HotJava 拥有了在页面中运行 Java 代码的能力,可以无障碍的运行在各个电脑设备上,这个效果得到了 Sun 公司首席执行官 ScottMcNealy 的支持,触发了 Java 进军 Internet 的决心。
这在当时引起了不小的轰动,人们从中似乎看到了互联网未来该有的样子,一时间,Java 受到了众多厂商和开发者的追捧。于是趁热打铁,Sun 在 1996 年正式发布了 JDK1.0,当时最主要的十个操作系统厂商宣布,将在它们的系统中支持 Java 程序的运行,从此在互联网高速发展中大杀四方。
Java 之所以能在互联网发展中获得广泛的开发者支持,一个很重要的原因就是它可以实现“一次编写,到处运行”的效果,极大的省去了软件开发工作量,能实现这种效果主要得益于 Java 的架构理念设计。
像 C、C++ 等编程语言,代码是直接编译成机器码执行,虽然很快,但是不同的平台(x86、ARM等) CPU 的指令集也不同,每次开发一个应用程序需要编译出每一种平台的对应机器码,非常麻烦。
Java 则不同,它会将代码编译成一种“字节码”,它类似于抽象的 CPU 指令,然后虚拟机负责加载字节码,根据不同的平台编译成对应的机器码并执行,这样就可以实现了“一次编写,到处运行”的效果。
当然,对于虚拟机,需要针对每个平台分别开发,为了保证不同平台、不同公司开发的虚拟机都能正确执行 Java 字节码,SUN 公司制定了一系列的 Java 虚拟机规范。从实践的角度来看,虚拟机的兼容性做得非常好,低版本的 Java 字节码完全可以正常运行在高版本的虚拟机上。
整个 JDK 内部结构,可以用如下图来概括(图片来自于廖雪峰的Java介绍)
JDK、JRE 和 JVM 三者之间的关系,可以用如下内容来简要描述。
- JDK(Java Development Kit):指的是 Java 语言的软件开发工具包,包括编译器、调试器、Java API 类库、Java 虚拟机等内容,通常用于开发环境
- JRE(Java Runtime Environment):指的是 Java 运行时环境,包括 Java API 类库、Java 虚拟机等内容,通常用于运行 Java 应用程序,通常用于生产环境
- JVM(Java Virtual Machine):指的是 Java 虚拟机,用于在不同的平台上执行 Java 应用程序
可以清晰的看到,JDK 包含了 Java 程序相关的所有组件,这也就是为什么在学习 Java 之前,需要先安装 JDK 的原因。
三、小结
本文主要围绕 Java 的发展历史做了一次知识总结,在后续的文章中,我们会对 Java 相关核心技术知识进行总结和分享,欢迎大家持续关注!
四、参考
1.https://www.liaoxuefeng.com/wiki/1252599548343744/1255876875896416
2.https://www.cnblogs.com/xrq730/p/4826691.html
作者:潘志的技术笔记
出处:https://pzblog.cn/
版权归作者所有,转载请注明出处