Java由Sun Microsystems Inc于1991年開(kāi)發(fā),后來(lái)被Oracle Corporation收購(gòu)。它是由James Gosling和Patrick Naughton開(kāi)發(fā)的。它是一種簡(jiǎn)單的編程語(yǔ)言。在Java中編寫(xiě)、編譯和調(diào)試程序很容易。它有助于創(chuàng)建模塊化程序和可重用代碼。
在我們開(kāi)始學(xué)習(xí)Java之前,讓我們先熟悉一下常見(jiàn)的Java術(shù)語(yǔ)。
Java虛擬機(jī)(JVM)
這通常稱為JVM。之前,我們討論JVM讓我們看看程序執(zhí)行的階段。階段如下:我們編寫(xiě)程序,然后編譯程序,最后運(yùn)行程序。
1、程序的編寫(xiě)當(dāng)然是像你我這樣的java程序員。
2、程序的編譯由javac編譯器完成,javac是java開(kāi)發(fā)工具包(JDK)中的主要java編譯器。它以java程序?yàn)檩斎?,生成java字節(jié)碼作為輸出。
3、第三階段,JVM執(zhí)行編譯器生成的字節(jié)碼。這稱為程序運(yùn)行階段。
所以,現(xiàn)在我們明白了JVM的主要功能是執(zhí)行編譯器產(chǎn)生的字節(jié)碼。每個(gè)操作系統(tǒng)都有不同的JVM,但是它們?cè)趫?zhí)行字節(jié)碼后產(chǎn)生的輸出在所有操作系統(tǒng)中都是相同的。這就是我們稱java為平臺(tái)無(wú)關(guān)語(yǔ)言的原因。
字節(jié)碼
如上所述,JDK的javac編譯器將java源代碼編譯成字節(jié)碼,以便JVM執(zhí)行。字節(jié)碼由編譯器保存在一個(gè).class文件中。
Java開(kāi)發(fā)工具包(JDK)
在解釋JVM和字節(jié)碼時(shí),我使用了術(shù)語(yǔ)JDK。讓我們討論一下。顧名思義,這是一個(gè)完整的Java開(kāi)發(fā)工具包,包括JRE(Java運(yùn)行時(shí)環(huán)境)、編譯器和各種工具,如JavaDoc、Java調(diào)試器等,為了創(chuàng)建、編譯和運(yùn)行Java程序,您需要在您的計(jì)算機(jī)上安裝JDK。
Java是一種面向?qū)ο蟮恼Z(yǔ)言
面向?qū)ο缶幊淌且环N將程序組織為對(duì)象集合的方法,每個(gè)對(duì)象代表一個(gè)類的實(shí)例。
面向?qū)ο缶幊痰?個(gè)主要概念是:
抽象 封裝 遺產(chǎn) 多態(tài)性 簡(jiǎn)單的
Java被認(rèn)為是一種簡(jiǎn)單的語(yǔ)言,因?yàn)樗鼪](méi)有運(yùn)算符重載、多重繼承、指針和顯式內(nèi)存分配等復(fù)雜特性。
健壯的語(yǔ)言
穩(wěn)健意味著可靠。Java編程語(yǔ)言的開(kāi)發(fā)方式非常重視早期檢查可能的錯(cuò)誤,這就是為什么Java編譯器能夠檢測(cè)其他編程語(yǔ)言不易檢測(cè)到的錯(cuò)誤的原因。使其健壯的Java的主要特性是垃圾收集、異常處理和內(nèi)存分配。
安全的
我們沒(méi)有指針,我們不能在java中訪問(wèn)越界數(shù)組(如果你嘗試這樣做,你會(huì)得到ArrayIndexOutOfBoundsException)。這就是為什么在Java中不可能利用堆棧損壞或緩沖區(qū)溢出等幾個(gè)安全漏洞的原因。
Java是分布式的
使用java編程語(yǔ)言我們可以創(chuàng)建分布式應(yīng)用程序。RMI(遠(yuǎn)程方法調(diào)用)和EJB(企業(yè)Java Beans)用于在java中創(chuàng)建分布式應(yīng)用程序。簡(jiǎn)而言之:Java程序可以分布在多個(gè)使用Internet連接相互連接的系統(tǒng)上。一個(gè)JVM(java虛擬機(jī))上的對(duì)象可以在遠(yuǎn)程JVM上執(zhí)行過(guò)程。
多線程
Java支持多線程。多線程是Java的一項(xiàng)特性,它允許同時(shí)執(zhí)行程序的兩個(gè)或多個(gè)部分,以最大限度地利用CPU。
更多知識(shí)請(qǐng)看下方視頻,能讓小白快速掌握J(rèn)ava基礎(chǔ)知識(shí)。