Java语言简介

Java语言发展史

Java语言是美国Sun公司(Stanford University Network)在1995年推出的计算机语言
Java之父:詹姆斯·高斯林(James Gosling)

Java语言发展时间线

  • 1995年5月,5月23日,Sun公司在Sun world会议上正式发布Java,Java语言诞生
  • 1996年1月,Sun公司发布了Java的第一个开发工具包(JDK 1.0)
  • 1997年2月,JDK 1.1面世
  • 1998年12月8日,第二代Java平台的企业版J2EE发布
  • 1999年4月27日,HotSpot虚拟机发布。HotSpot虚拟机发布时是作为JDK 1.2的附加程序提供的,后来它成为了JDK 1.3及之后所有版本的Sun JDK的默认虚拟机。
  • 1999年6月,Sun公司发布了第二代Java平台(简称为Java2)的3个版本:J2ME(Java2 Micro Edition,Java2平台的微型版),应用于移动、无线及有限资源的环境;J2SE(Java 2 Standard Edition,Java 2平台的标准版),应用于桌面环境;J2EE(Java 2Enterprise Edition,Java 2平台的企业版),应用于基于Java的应用服务器。Java 2平台的发布,是Java发展过程中最重要的一个里程碑,标志着Java的应用开始普及。
  • 2000年5月,JDK1.3、JDK1.4和J2SE1.3相继发布
  • 2001年9月24日,J2EE1.3发布
  • 2002年2月,J2SE1.4发布,自此Java的计算能力有了大幅提升,与J2SE1.3相比,其多了近62%的类和接口。在这些新特性当中,还提供了广泛的XML支持、安全套接字(Socket)支持(通过SSL与TLS协议)、全新的I/OAPI、正则表达式、日志与断言。
  • 2004年,J2SE1.5发布,成为Java语言发展史上的又一里程碑。为了表示该版本的重要性,J2SE1.5更名为Java SE 5.0(内部版本号1.5.0),代号为“Tiger”,Tiger包含了从1996年发布1.0版本以来的最重大的更新,其中包括泛型支持、基本类型的自动装箱、改进的循环、枚举类型、格式化I/O及可变参数。
  • 2005年,在Java One大会上,Sun公司发布了Java SE 6。此时,Java的各种版本已经更名,已取消其中的数字2,如J2EE更名为JavaEE,J2SE更名为JavaSE,J2ME更名为JavaME。
  • 2009年,Oracle甲骨文公司宣布收购Sun公司
  • 2011年,Oracle公司发布Java SE 7
  • 2014年,Oracle公司发布Java SE 8
  • 2017年,Oracle公司发布Java SE 9,并宣布,他们将Java的发布频率改为每六个月一次
  • 2018年,Oracle公司发布Java SE 10、11(LTS 版本)
  • 2019年,Oracle公司发布Java SE 12、13
  • 2020年,Oracle公司发布Java SE 14、15(预测是20年9月)

Java语言跨平台原理

什么是平台?

我们把CPU处理器与操作系统的这种软硬件的结合体称为平台,因为现在主流的操作系统都支持主流的CPU,所以有时也会把操作系统称之为平台(CPU中存在一套用来计算和控制计算机系统的指令集合,每种cpu都有其特定的指令集)

Java与C语言编译过程比较

C编译过程:

编译
编译
编译
*.C源程序
Windows平台编译器
Windows平台运行程序
Linux平台编译器
Linux平台运行程序
其他平台编译器
其他平台运行程序

C语言是编译执行的,编译器与平台相关,使用特定编译器编译的程序只能在对应的平台运行,编译后的可执行文件也是与平台相关的。

Java跨平台:

编译
*.java源文件
中间码 .class
Windows平台虚拟机
Windows平台 运行程序
Linux平台虚拟机
Linux平台 运行程序
其他平台虚拟机
其他平台 运行程序

Java实现跨平台无非就是JVM起的作用:
Java 源代码首先会被编译为字节码文件(.class),但并非是机器语言,而是需要在 JVM 上运行,而 .class 文件在 JVM 上是解释执行的。所以 Java 兼具编译型语言和解释型语言的特点,它既有编译的过程,也有解释的过程(理解它的过程就行了,不必下一个“精确”的定义)。正因为Java对于不同的操作系统有着不同的JVM,所以实现了真正意义上的跨平台(一次编译,到处运行)。

总结

Java通过提供不同系统、版本、位数的JVM (Java Virtual Machine),来屏蔽不同的系统指令集差异,如果系统需要部署到不同平台时,只需要在系统上安装对应版本的JVM即可,所以Java程序可以在任意操作系统上运行。

JVM、JRE和JDK

JVM(Java Virtual Machine):

Java虚拟机,它是Java跨平台实现的最核心的部分,所有的Java程序首先被编译成*.class字节码文件,这种文件可以在JVM上执行,JVM在执行字节码文件时,把其翻译成具体平台上的机器指令执行(一次编译,到处运行)。

JRE(Java Runtime Environment):

是Java程序的运行时环境,包含 JVM 和运行时所需要的核心类库。
运行一个Java程序的最小环境为 JRE。

JDK(Java Development Kit):

是Java程序开发工具包,包括了JRE、Java工具和Java基础类库
Java工具如:编译工具(javac.exe)和运行工具(java.exe)等。
基础类库如:rt.jar
开发一个Java程序的最小环境为JDK。
三者关系图:
关系图

JDK的下载和安装

通过官方平台下载:

https://www.oracle.com/index.html
https://www.oracle.com/java/technologies/javase-downloads.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值