商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > java基础《java历史》

java基础《java历史》

  发布于2026-07-11 阅读(0)

扫一扫,手机访问

技术能不能发展起来,关键要看什么?其实就三个硬指标。

ja va基础《ja va历史》

第一,有没有一个比较好的社区。像C、C++、Ja va、Python和Ja vaScript,生态圈都极其丰富和活跃。尤其是商业机构深度参与的社区,比如Linux的社区,人气更是爆棚。
第二,有没有一个工业化的标准。C、C++、Ja va都有标准化组织。Ja va尤其典型,它在架构上还推出了J2EE这样的企业级标准。
第三,有没有一个或多个杀手级应用。C、C++和Ja va的杀手级应用不用多说。就算是对PHP这样本身不算出色的语言,因为它作为LAMP(Linux时代的第一个杀手级解决方案)中的关键技术,照样发展得风生水起。

这三个条件,一个新技术的只要能占到其中一到两点就已经相当不错了。而像Ja va,三点全占——社区繁荣、标准完善、杀手级应用遍地——所以它的发展轨迹才如此耀眼。当然,除了这三点,还有几个不容忽视的加分项:

  • 学习曲线是否低,上手是否快。这点至关重要,C++在这方面的表现就越来越不理想。
  • 有没有不错的提高开发效率的框架。比如Ja va的Spring,C++的STL。
  • 有没有巨型技术公司作为后盾。比如Ja va和Linux背后的IBM、Sun。
  • 能不能解决软件开发中的痛点。比如Ja va解决了C和C++让人头疼的内存管理问题。

说回正题。Ja va的历史要追溯到1991年,由Patrick Naughton和James Gosling(一位全能的计算机奇才)带领的Sun公司工程师小组,最初的目标是设计一种用于有线电视转换盒这类消费设备的小型语言。1996年初,Sun发布了Ja va的第一个版本。

那么,Ja va到底是怎么一步步走到今天的?看看下面这张版本演进表就清楚了。

版本年份语言新特性类与接口数量
1.01996语言本身211
1.11997内部类477
1.21998Strictfp修饰符1524
1.320001840
1.42002断言2723
5.02004泛型类、“for each”循环、可变参数、自动装箱、元数据、枚举、静态导入3279
62006
72011基于字符串的switch、钻石操作符、二进制字面量、异常处理改进4024
82014Lambda表达式、包含默认方法的接口、流和日期/时间库4240
92017.9JSR 376:Jigsaw项目中的JDK模块化 (Ja va Module System);JEP 222:jshell(Ja va REPL);JEP 295:Ahead-of-Time Compilation;JEP 268:XML Catalogs;以及JEP 266:更多并发更新(Flow类,使Ja va支持反应流)工作正在进行中
102018.3JSR 354:货币和汇率API
112018.9OpenJDK

关于每个版本的更详细说明,可以参考Ja va官方的规范文档(Ja va SE Specifications)。

在正式开始编码之前,有几个基本概念需要先搞清楚:

  • JDK(Ja va Development Kit):开发工具包。1.2到1.4版本曾被称为Ja va SDK(软件开发包)。
  • JRE(Ja va Runtime Environment):运行时环境,包含虚拟机但不包含编译器。

再来说说Ja va的数据类型。Ja va是一种强类型语言,每个变量都必须声明一种类型。基本类型(primitive type)共有8种:

  • 整型:byte(1字节)、short(2字节)、int(4字节)、long(8字节)
  • 浮点型:float(4字节,如3.14F或3.14f)、double(8字节,如3.14D)
  • 字符型:char,表示Unicode编码中的一个字符单元
  • 布尔型:boolean,表示真值

值得一提的是,Ja va中还有一个能表示任意精度的算术包,通常称为“大数值”(big number)。它虽然名字里带“大”,但并不是一种新的Ja va基本类型,而是Ja va对象。

本文转载于:https://blog.csdn.net/qq_35716892/article/details/83117103 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注