您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > JAVA

Java 入门简介

时间:2022-07-31 13:47:12  来源:  作者:村雨遥

前言

既然要学习一门技术,那么就先来了解下它的历史,我们为什么要使用它,以及我们能用它来干啥。

历史背景

1990 年代初,Sun 公司的詹姆斯·高斯林等人为了实现电视机、电话、闹钟等家用电器的控制和通信,开发了一套用于设置在家用电器等小型系统中的编程语言。在当时,这门语言被命名为 Oka。但由于市场需求不高,所以该计划被逐渐放弃。

随着 1990 年代互联网的发展,Sun 公司发现 Oka 语言在互联网中的应用前景广泛。于是决定对 Oka 进行改造,并在 1995 年 5 月以 JAVA 的名义正式发布。

随着互联网的迅猛发展,Java 也得以逐渐成为重要的网络编程语言,詹姆斯·高斯林也被大家公认为 Java 之父。

到了 2009 年, Sun 公司被 Oracle 公司所收购,自此 Java 成为 Oracle 公司的一大产品直至今日。

以下是截止到本文写作时间(2022 年 7 月 23 日)Java 的历史年表,累计经过了 18 次主要版本更新,目前来到了 Java SE 18。而 Java SE 19 早期预览版也已经流出,根据官方给出的发布时间表,大概会在 9 月份发布 Java SE 19 的 GA 版本。不过虽然 Java 已经经历了这么多版本的更新,但国内目前用的最多的应该还是 Java 1.8 版本。而出于对稳定性的考虑,企业开发更喜欢 LTS 版本,这也是为什么至今 Java 1.8 还占有如此高的市场比例。

版本

发布日期

主要事件

JDK Beta

1995

Java 语言发布,用 Java 实现的浏览器和 Java Applet 被大量应用

JDK 1.0

1996 年 1 月

奠定了JDK、JRE、JVM 的体系结构

JDK 1.1

1997 年 2 月

加入 JIT,提升 JDK 效率

J2SE 1.2

1998 年 12 月

确立 J2SE、J2EE、J2ME 产品结构

J2SE 1.3

2000 年 5 月

内置 HotSpot JVM

J2SE 1.4

2002 年 2 月

XML 处理、断言、支持正则表达式

J2SE 5.0

2004 年 9 月

静态导入、泛型、for-each 循环、自动拆,装箱、枚举、可变参数

Java SE 6

2006 年 12 月

提供动态语言支持、同步垃圾回收

Java SE 7

2011 年 7 月

字符串的switch语句、多异常捕抓

Java SE 8 (LTS)

2014 年 3 月

Lambda表达式

Java SE 9

2017 年 9 月

轻量级 json API、垃圾收集机制更新

Java SE 10

2018 年 3 月

局部变量类型推断,Java 后续版本快速迭代更新

Java SE 11 (LTS)

2018 年 9 月

常用类增强,Java 11 是继 Java 8 之后的首个长期支持本版

Java SE 12

2019 年 3 月

switch 表达式增强

Java SE 13

2019 年 9 月

文本块支持

Java SE 14

2020 年 3 月

instanceof 支持模式匹配

Java SE 15

2020 年 9 月

EdDSA 数字签名算法、 密封类、隐藏类

Java SE 16

2021 年 3 月

启用 C++ 14 语言特性、Vector API

Java SE 17 (LTS)

2021 年 9 月

恢复总是严格的浮点语义、增强型伪随机数生成器

Java SE 18

2022年 3月

默认 UTF-8 编码、代码片段、简单的网络服务器

为什么使用 Java

既然编程语言有那么多,那我们为什么要使用 Java 语言呢?以下就来看看 Java 被广泛使用的几个原因。

  1. 世界范围内流行,国内使用最为广泛的编程语言之一。

以下是截止 2022 年 7 月 TIOBE 统计的编程语言排行榜,可以看到 Java 处于前三的位置。而从历年编程语言所占市场份额趋势图也可以看出,Java 虽然没有一直独占鳌头,但绝大数时间都是占据领先地位。

 


 

  1. 移植性高

由于 Java 中 JVM 的特性,所以能够做到一次编译,随处运行,其移植性也就更高。

  1. 开发社区完善

社区完善也是 Java 为什么使用多的原因,各种封装 API,比起 C、C++ 语言使用起来更加方便。虽然 Python/ target=_blank class=infotextkey>Python 的封装程度更高,但是其效率比起 Java 却打了折扣。毕竟封装程度和效率是成反比的,Java 兼具了效率高和使用方便的特点,所以更受人们青睐。

Java 能做什么

Java 应用广泛,在我们日常中就能经常见到由 Java 所开发的程序。常见的的应用应用领域如下:

  1. 桌面 GUI 应用开发
  2. 服务器系统
  3. 企业级应用开发
  4. 大数据开发
  5. 移动应用开发
  6. 游戏开发
  7. ……

Java 技术体系

根据传统意义上 Sun 官方定义, Java 技术体系的组成主要就是我们常说的 JDK,即以下三部分:

  1. Java 程序设计语言
  2. Java 虚拟机
  3. Java API 类库

 

同时,Java 技术体系又可以主要分为以下 3 个平台。

  1. Java SE

Java Standard Edition,即 Java 标准版。主要是 Java 技术的核心和基础,要想学好 Java,那么首先你得掌握好这部分。主要运行在桌面级应用,如 windows 应用程序。

  1. Java EE

Java Enterprise Editon,即 Java 企业版。从它的名字就不难看出,这是 Java 针对企业级应用开发所提供的一套解决方案,主要用于架设高性能企业网站

  1. Java ME

Java Micro Edition,即 Java 小型版。主要是 Java 针对移动设备应用所提供的一套解决方案,主要运行在手机、pad 等移动端。

 

总结

本文主要从 Java 历史背景、选择 Java 的理由、Java 能做什么、Java 技术体系等 4 方面对 Java 语言做了一个简单介绍。接下来的文章我们就来看看,如何搭建 Java 的开发环境以及实现一个简单的入门程序。



Tags:Java   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
JavaScript的异步编程常见模式
在JavaScript中,异步编程是一种处理长时间运行操作(如网络请求或I/O操作)的常见方式。它允许程序在等待这些操作完成时继续执行其他任务,从而提高应用程序的响应性和性能。JavaS...【详细内容】
2024-04-12  Search: Java  点击:(11)  评论:(0)  加入收藏
17 个你需要知道的 JavaScript 优化技巧
你可能一直在使用JavaScript搞开发,但很多时候你可能对它提供的最新功能并不感冒,尽管这些功能在无需编写额外代码的情况下就可以解决你的问题。作为前端开发人员,我们必须了解...【详细内容】
2024-04-03  Search: Java  点击:(7)  评论:(0)  加入收藏
你不可不知的 15 个 JavaScript 小贴士
在掌握如何编写JavaScript代码之后,那么就进阶到实践——如何真正地解决问题。我们需要更改JS代码使其更简单、更易于阅读,因为这样的程序更易于团队成员之间紧密协...【详细内容】
2024-03-21  Search: Java  点击:(29)  评论:(0)  加入收藏
Oracle正式发布Java 22
Oracle 正式发布 Java 22,这是备受欢迎的编程语言和开发平台推出的全新版本。Java 22 (Oracle JDK 22) 在性能、稳定性和安全性方面进行了数千种改进,包括对Java 语言、其API...【详细内容】
2024-03-21  Search: Java  点击:(13)  评论:(0)  加入收藏
构建一个通用灵活的JavaScript插件系统?看完你也会!
在软件开发中,插件系统为应用程序提供了巨大的灵活性和可扩展性。它们允许开发者在不修改核心代码的情况下扩展和定制应用程序的功能。本文将详细介绍如何构建一个灵活的Java...【详细内容】
2024-03-20  Search: Java  点击:(23)  评论:(0)  加入收藏
Java 8 内存管理原理解析及内存故障排查实践
本文介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,以及各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时...【详细内容】
2024-03-20  Search: Java  点击:(18)  评论:(0)  加入收藏
如何编写高性能的Java代码
作者 | 波哥审校 | 重楼在当今软件开发领域,编写高性能的Java代码是至关重要的。Java作为一种流行的编程语言,拥有强大的生态系统和丰富的工具链,但是要写出性能优异的Java代码...【详细内容】
2024-03-20  Search: Java  点击:(25)  评论:(0)  加入收藏
在Java应用程序中释放峰值性能:配置文件引导优化(PGO)概述
译者 | 李睿审校 | 重楼在Java开发领域,优化应用程序的性能是开发人员的持续追求。配置文件引导优化(Profile-Guided Optimization,PGO)是一种功能强大的技术,能够显著地提高Ja...【详细内容】
2024-03-18  Search: Java  点击:(34)  评论:(0)  加入收藏
对JavaScript代码压缩有什么好处?
对JavaScript代码进行压缩主要带来以下好处: 减小文件大小:通过移除代码中的空白符、换行符、注释,以及缩短变量名等方式,可以显著减小JavaScript文件的大小。这有助于减少网页...【详细内容】
2024-03-13  Search: Java  点击:(13)  评论:(0)  加入收藏
跨端轻量JavaScript引擎的实现与探索
一、JavaScript 1.JavaScript语言JavaScript是ECMAScript的实现,由ECMA 39(欧洲计算机制造商协会39号技术委员会)负责制定ECMAScript标准。ECMAScript发展史: 2.JavaScript...【详细内容】
2024-03-12  Search: Java  点击:(13)  评论:(0)  加入收藏
▌简易百科推荐
Java 8 内存管理原理解析及内存故障排查实践
本文介绍Java8虚拟机的内存区域划分、内存垃圾回收工作原理解析、虚拟机内存分配配置,以及各垃圾收集器优缺点及场景应用、实践内存故障场景排查诊断,方便读者面临内存故障时...【详细内容】
2024-03-20  vivo互联网技术    Tags:Java 8   点击:(18)  评论:(0)  加入收藏
如何编写高性能的Java代码
作者 | 波哥审校 | 重楼在当今软件开发领域,编写高性能的Java代码是至关重要的。Java作为一种流行的编程语言,拥有强大的生态系统和丰富的工具链,但是要写出性能优异的Java代码...【详细内容】
2024-03-20    51CTO  Tags:Java代码   点击:(25)  评论:(0)  加入收藏
在Java应用程序中释放峰值性能:配置文件引导优化(PGO)概述
译者 | 李睿审校 | 重楼在Java开发领域,优化应用程序的性能是开发人员的持续追求。配置文件引导优化(Profile-Guided Optimization,PGO)是一种功能强大的技术,能够显著地提高Ja...【详细内容】
2024-03-18    51CTO  Tags:Java   点击:(34)  评论:(0)  加入收藏
Java生产环境下性能监控与调优详解
堆是 JVM 内存中最大的一块内存空间,该内存被所有线程共享,几乎所有对象和数组都被分配到了堆内存中。堆被划分为新生代和老年代,新生代又被进一步划分为 Eden 和 Survivor 区,...【详细内容】
2024-02-04  大雷家吃饭    Tags:Java   点击:(63)  评论:(0)  加入收藏
在项目中如何避免和解决Java内存泄漏问题
在Java中,内存泄漏通常指的是程序中存在一些不再使用的对象或数据结构仍然保持对内存的引用,从而导致这些对象无法被垃圾回收器回收,最终导致内存占用不断增加,进而影响程序的性...【详细内容】
2024-02-01  编程技术汇  今日头条  Tags:Java   点击:(78)  评论:(0)  加入收藏
Java中的缓存技术及其使用场景
Java中的缓存技术是一种优化手段,用于提高应用程序的性能和响应速度。缓存技术通过将计算结果或者经常访问的数据存储在快速访问的存储介质中,以便下次需要时可以更快地获取。...【详细内容】
2024-01-30  编程技术汇    Tags:Java   点击:(78)  评论:(0)  加入收藏
JDK17 与 JDK11 特性差异浅谈
从 JDK11 到 JDK17 ,Java 的发展经历了一系列重要的里程碑。其中最重要的是 JDK17 的发布,这是一个长期支持(LTS)版本,它将获得长期的更新和支持,有助于保持程序的稳定性和可靠性...【详细内容】
2024-01-26  政采云技术  51CTO  Tags:JDK17   点击:(100)  评论:(0)  加入收藏
Java并发编程高阶技术
随着计算机硬件的发展,多核处理器的普及和内存容量的增加,利用多线程实现异步并发成为提升程序性能的重要途径。在Java中,多线程的使用能够更好地发挥硬件资源,提高程序的响应...【详细内容】
2024-01-19  大雷家吃饭    Tags:Java   点击:(111)  评论:(0)  加入收藏
这篇文章彻底让你了解Java与RPA
前段时间更新系统的时候,发现多了一个名为Power Automate的应用,打开了解后发现是一个自动化应用,根据其描述,可以自动执行所有日常任务,说的还是比较夸张,简单用了下,对于office、...【详细内容】
2024-01-17  Java技术指北  微信公众号  Tags:Java   点击:(108)  评论:(0)  加入收藏
Java 在 2023 年仍然流行的 25 个原因
译者 | 刘汪洋审校 | 重楼学习 Java 的过程中,我意识到在 90 年代末 OOP 正值鼎盛时期,Java 作为能够真正实现这些概念的语言显得尤为突出(尽管我此前学过 C++,但相比 Java 影响...【详细内容】
2024-01-10  刘汪洋  51CTO  Tags:Java   点击:(82)  评论:(0)  加入收藏
站内最新
站内热门
站内头条