Java 入門簡介

村雨遙 發佈 2022-07-31T16:10:05.034024+00:00

前言既然要學習一門技術,那麼就先來了解下它的歷史,我們為什麼要使用它,以及我們能用它來幹啥。歷史背景1990 年代初,Sun 公司的詹姆斯·高斯林等人為了實現電視機、電話、鬧鐘等家用電器的控制和通信,開發了一套用於設置在家用電器等小型系統中的程式語言。

前言

既然要學習一門技術,那麼就先來了解下它的歷史,我們為什麼要使用它,以及我們能用它來幹啥。

歷史背景

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 的封裝程度更高,但是其效率比起 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 的開發環境以及實現一個簡單的入門程序。

關鍵字: