Java從安裝到上手的快速入門教程
一、Java 簡(jiǎn)介
1991 年,美國(guó)的 Sun 公司為了開發(fā)智能家電等嵌入式設(shè)備的控制系統(tǒng),由詹姆斯?高斯林(James Gosling)領(lǐng)導(dǎo)的 Green 計(jì)劃 團(tuán)隊(duì)開始了一種新語(yǔ)言的研發(fā)。最初該語(yǔ)言被命名為 Oak(橡樹),它是基于 C++ 開發(fā)的,吸收了 C++ 的優(yōu)點(diǎn)并做出來(lái)擴(kuò)展,同時(shí)摒棄了 C++ 中的一些復(fù)雜概念,使得 Java 功能強(qiáng)大的同時(shí)又易于理解和使用。
然而,Green 項(xiàng)目 并沒(méi)有取得預(yù)期的成功,而作為該項(xiàng)目的產(chǎn)品 Oak 語(yǔ)言也幾乎被遺棄,但隨著互聯(lián)網(wǎng)發(fā)展的興起,Sun 公司發(fā)現(xiàn)其技術(shù)在互聯(lián)網(wǎng)領(lǐng)域有更大的應(yīng)用潛力,于是對(duì)語(yǔ)言進(jìn)行了進(jìn)一步的改進(jìn)和重構(gòu),以適應(yīng)新環(huán)境的需求。
最終,于 1995 年,Oak 正式更名為 Java,并在互聯(lián)網(wǎng)上發(fā)布。憑借其 一次編寫,到處運(yùn)行 的跨平臺(tái)特性,迅速吸引了開發(fā)者的關(guān)注,開啟了在互聯(lián)網(wǎng)領(lǐng)域的廣泛應(yīng)用之路。
在 2009 年 04 月,美國(guó) Oracle(甲骨文)公司以 74 億美元的價(jià)格收購(gòu)了 Sun 公司,Java 也隨之成為 Oracle 公司的產(chǎn)品。
二、Java 特點(diǎn)
Java 是一種廣泛使用的高級(jí)編程語(yǔ)言,具有眾多顯著特點(diǎn),以下為你詳細(xì)介紹:
2.1 面向?qū)ο?/h3>
封裝:將數(shù)據(jù)(屬性)和操作數(shù)據(jù)的方法綁定在一起,形成類。通過(guò)訪問(wèn)控制修飾符來(lái)隱藏對(duì)象的內(nèi)部實(shí)現(xiàn)細(xì)節(jié),只對(duì)外提供必要的接口。這樣可以提高代碼的安全性和可維護(hù)性。
繼承:允許一個(gè)類繼承另一個(gè)類的屬性和方法,從而實(shí)現(xiàn)代碼的復(fù)用和擴(kuò)展。被繼承的類稱為父類(基類),繼承的類稱為子類(派生類)。子類可以重寫父類的方法,實(shí)現(xiàn)自己的特定行為。
多態(tài):同一個(gè)方法可以根據(jù)對(duì)象的不同類型表現(xiàn)出不同的行為。多態(tài)通過(guò)繼承和方法重寫實(shí)現(xiàn),使得代碼更加靈活和可擴(kuò)展。
2.2 跨平臺(tái)
Java 程序編譯后生成的是字節(jié)碼文件,而不是針對(duì)特定操作系統(tǒng)的機(jī)器碼。字節(jié)碼是一種中間形式的代碼,它可以在任何安裝了 Java 虛擬機(jī)(JVM)的平臺(tái)上運(yùn)行。
JVM 是 Java 實(shí)現(xiàn)跨平臺(tái)的關(guān)鍵,負(fù)責(zé)將字節(jié)碼解釋或編譯成特定平臺(tái)的機(jī)器碼并執(zhí)行,不同的操作系統(tǒng)有不同的 JVM 實(shí)現(xiàn),因此同一個(gè) Java 程序可以在不同的操作系統(tǒng)上運(yùn)行,這也是 Java 著名的 一次編譯,到處運(yùn)行 由來(lái)。
2.3 安全性
字節(jié)碼校驗(yàn):在 Java 程序運(yùn)行之前,JVM 會(huì)對(duì)字節(jié)碼進(jìn)行校驗(yàn),確保字節(jié)碼的格式正確、不違反訪問(wèn)權(quán)限等規(guī)則。這可以防止惡意代碼通過(guò)篡改字節(jié)碼來(lái)破壞系統(tǒng)。
訪問(wèn)控制:Java 提供了嚴(yán)格的訪問(wèn)控制機(jī)制,通過(guò)訪問(wèn)修飾符來(lái)控制類、方法和屬性的訪問(wèn)權(quán)限。只有具有相應(yīng)權(quán)限的代碼才能訪問(wèn)受保護(hù)的資源,從而提高了代碼的安全性。
安全管理器:Java 的安全管理器可以對(duì)程序的各種操作進(jìn)行細(xì)粒度的控制,如文件訪問(wèn)、網(wǎng)絡(luò)訪問(wèn)等。開發(fā)者可以通過(guò)配置安全策略來(lái)限制程序的權(quán)限,防止程序進(jìn)行不安全的操作。
2.4 多線程
Java 內(nèi)置了對(duì)多線程的支持,如:Thread 類 和 Runnable 接口 可以方便地創(chuàng)建和管理線程。多線程允許程序同時(shí)執(zhí)行多個(gè)任務(wù),提高了程序的并發(fā)性能和響應(yīng)速度。
為了保證多線程程序的正確性,Java 提供了同步機(jī)制,如:synchronized 關(guān)鍵字 和 Lock 接口。同步機(jī)制可以確保在同一時(shí)間只有一個(gè)線程可以訪問(wèn)共享資源,避免了數(shù)據(jù)競(jìng)爭(zhēng)和不一致的問(wèn)題。
2.5 自動(dòng)內(nèi)存管理
Java 的垃圾回收(GC)機(jī)制負(fù)責(zé)自動(dòng)回收不再使用的對(duì)象所占用的內(nèi)存。當(dāng)一個(gè)對(duì)象不再被任何引用指向時(shí),垃圾回收器會(huì)在合適的時(shí)候?qū)⑵湔加玫膬?nèi)存回收,開發(fā)者無(wú)需手動(dòng)編寫代碼來(lái)釋放內(nèi)存,減少了內(nèi)存泄漏的風(fēng)險(xiǎn)。
2.6 高性能
Java 虛擬機(jī)中的即時(shí)編譯器(JIT)可以在運(yùn)行時(shí)將頻繁執(zhí)行的字節(jié)碼編譯成機(jī)器碼,從而提高程序的執(zhí)行速度。JIT 編譯器會(huì)根據(jù)程序的運(yùn)行情況動(dòng)態(tài)地進(jìn)行編譯優(yōu)化,使得 Java 程序在長(zhǎng)期運(yùn)行過(guò)程中的性能接近甚至超過(guò)一些靜態(tài)編譯語(yǔ)言。
三、Java 平臺(tái)
為了滿足不同場(chǎng)景的需要,Java 技術(shù)體系衍生出了三個(gè)不同的平臺(tái):Java SE、Java EE 和 Java ME。
3.1 Java SE
Java 標(biāo)準(zhǔn)版是 Java 技術(shù)體系的核心和基礎(chǔ),它主要用于桌面應(yīng)用程序的開發(fā),由于歷史和定位原因,Java 在桌面應(yīng)用開發(fā)領(lǐng)域的表現(xiàn)不佳,現(xiàn)在已經(jīng)很少有人使用 Java 進(jìn)行桌面應(yīng)用程序的開發(fā)了,但是學(xué)習(xí) Java SE 仍然是開發(fā) Java 技術(shù)的必備基礎(chǔ)。
3.2 Java EE
Java 企業(yè)版是 Java 技術(shù)體系中應(yīng)用最廣泛的部分,它為開發(fā)企業(yè)級(jí)應(yīng)用程序提供了一整套完整的解決方案,該技術(shù)體系中包含的技術(shù)諸如 Servlet 、JSP 等,主要針對(duì)的是 Web 應(yīng)用程序(網(wǎng)站)的開發(fā)。
3.3 Java ME
Java 微型版是在 Java SE 的基礎(chǔ)上進(jìn)行了一定的精簡(jiǎn),并增加了對(duì)移動(dòng)終端的支持,主要用于開發(fā)移動(dòng)端或嵌入式系統(tǒng)中的應(yīng)用程序。
三、JDK 下載
JDK(Java Development Kit) 指的是 Java 開發(fā)工具包,JDK 中包含了 Java 開發(fā)所需要的 Java 編譯器、JRE(Java 運(yùn)行時(shí)環(huán)境)、核心類庫(kù)以及其他開發(fā)工具,所以必須先安裝 JDK 才能使用 Java。
3.1 安裝 JDK
首先去 Oracle 官網(wǎng),然后根據(jù)自己電腦的操作系統(tǒng)和學(xué)習(xí)需要選擇下載的 JDK 版本,這邊我推薦下載 JDK 21(LTS),方便后續(xù)的學(xué)習(xí)。
這里為了防止網(wǎng)絡(luò)問(wèn)題導(dǎo)致下載不了,我把 JDK 21 的安裝包放在了阿里云盤,下載速度會(huì)快很多。
提取碼: d3o0

下載完后,雙擊打開安裝包,跟著下面的步驟,完成 JDK 的安裝:
- 安裝引導(dǎo)

- 安裝位置

建議:安裝的位置不要有中文和空格,可以參考我的安裝路徑。
- 安裝完成

3.2 配置環(huán)境變量
安裝完 JDK 后,由于其包含了許多開發(fā)工具,所以好配置環(huán)境變量后,就可以在任意目錄下直接使用這些工具,而無(wú)需每次都指定工具所在的完整路徑。
很多第三方的 Java 開發(fā)工具和框架在安裝和運(yùn)行時(shí)需要依賴 JDK 的環(huán)境變量,如果沒(méi)有正確配置環(huán)境變量,會(huì)提示找不到 Java 命令的錯(cuò)誤信息。
- 打開設(shè)置,點(diǎn)擊系統(tǒng),點(diǎn)擊系統(tǒng)信息

- 點(diǎn)擊高級(jí)系統(tǒng)設(shè)置

- 點(diǎn)擊環(huán)境變量

- 點(diǎn)擊新建

- 輸入下面信息,點(diǎn)擊確定

- 雙擊 Path 變量,按照下圖操作,點(diǎn)擊確定





3.3 測(cè)試是否成功
在系統(tǒng)的搜索欄中輸入 CMD,點(diǎn)擊以管理員身份運(yùn)行。

在黑窗口輸入 java --version,然后回車,出現(xiàn)下面配置信息,代表成功。

四、第一個(gè) Java 程序
下面為你詳細(xì)介紹如何編寫、編譯和運(yùn)行第一個(gè) Java 程序,這個(gè)經(jīng)典的程序就是輸出 Hello,World!。
4.1 編寫 Java 代碼
- 新建一個(gè)文本文件,取名為
HelloWorld。

- 輸入下面內(nèi)代碼(建議手敲)。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello,World!");
}
}
- 完成后,記得保存,再將擴(kuò)展名改為
.java。

4.2 編譯 Java 代碼
- 在系統(tǒng)的搜索欄中輸入
CMD,點(diǎn)擊以管理員身份運(yùn)行,找到 Java 文件的所在目錄。

- 輸入
javac HelloWorld.java,編譯 Java 源代碼。

如果成功,就會(huì)在 Java 文件所在的目錄生成一個(gè)字節(jié)碼文件。

4.3 運(yùn)行 Java 代碼
在 CMD 中,輸入 java HelloWorld,運(yùn)行 Java 程序,如果成功,就會(huì)在黑窗口中打印 Hello,World! 。

五、結(jié)語(yǔ)
到此這篇關(guān)于Java從安裝到上手的快速入門教程的文章就介紹到這了,更多相關(guān)Java入門教程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
java通過(guò)注解翻譯字典的實(shí)現(xiàn)示例
本文主要介紹了java通過(guò)注解翻譯字典的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-04-04
Java中的StringUtils.isBlank()方法解讀
這篇文章主要介紹了Java中的StringUtils.isBlank()方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2025-05-05
Java基于Netty實(shí)現(xiàn)Http server的實(shí)戰(zhàn)
本文主要介紹了Java基于Netty實(shí)現(xiàn)Http server的實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
ThreadPoolExecutor線程池原理及其execute方法(詳解)
下面小編就為大家?guī)?lái)一篇ThreadPoolExecutor線程池原理及其execute方法(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06
SpringBoot定時(shí)任務(wù)實(shí)現(xiàn)數(shù)據(jù)同步的方法
業(yè)務(wù)需求是,通過(guò)中臺(tái)調(diào)用api接口獲得,設(shè)備數(shù)據(jù),要求現(xiàn)實(shí)設(shè)備數(shù)據(jù)的同步,這篇文章主要介紹了SpringBoot定時(shí)任務(wù)實(shí)現(xiàn)數(shù)據(jù)同步的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08
SpringBoot的pom.xml文件中設(shè)置多環(huán)境配置信息方法詳解
這篇文章主要給大家介紹了關(guān)于SpringBoot的pom.xml文件中設(shè)置多環(huán)境配置信息的相關(guān)資料,Java項(xiàng)目通過(guò)pom.xml管理多中間件和多環(huán)境配置,結(jié)合application.yml動(dòng)態(tài)替換配置文件,利用Maven切換不同環(huán)境配置,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-05-05
SpringSecurity進(jìn)行認(rèn)證與授權(quán)的示例代碼
SpringSecurity是Spring家族中的一個(gè)安全管理框架,而認(rèn)證和授權(quán)也是SpringSecurity作為安全框架的核心功能,本文主要介紹了SpringSecurity進(jìn)行認(rèn)證與授權(quán)的示例代碼,感興趣的可以了解一下2024-06-06
Java輕松掌握面向?qū)ο蟮娜筇匦苑庋b與繼承和多態(tài)
本文主要講述的是面向?qū)ο蟮娜筇匦裕悍庋b,繼承,多態(tài),內(nèi)容含括從封裝到繼承再到多態(tài)的所有重點(diǎn)內(nèi)容以及使用細(xì)節(jié)和注意事項(xiàng),內(nèi)容有點(diǎn)長(zhǎng),請(qǐng)大家耐心看完2022-05-05

