初識(shí)Java

Java語(yǔ)言的兩種機(jī)制


1. Java的虛擬機(jī)機(jī)制(JVM)

? ? ?–虛擬機(jī)機(jī)制保證Java程序的跨平臺(tái)特性。

2. Java的垃圾回收機(jī)制

? ? –垃圾回收機(jī)制保證Java程序更安全、更高效。

開發(fā)Java的準(zhǔn)備


1. 安裝JDK

? ? ?—如果只需要運(yùn)行java程序只需安裝JRE,如果進(jìn)行開發(fā)編譯JDK也得裝上

2. 認(rèn)識(shí)JDK路徑中的每個(gè)子文件夾

? ? —bin.db.jre.lib 在bin文件夾中存放大部分我們平時(shí)用到的java命令,比如:javac java ?javadoc

3. 配置PATH環(huán)境變量

4.選擇性的配置CLASSPATH環(huán)境變量

JAVA虛擬機(jī)與JAVA文件


1. 將代碼都保存在一個(gè)擴(kuò)展名為.java的文件中

2. 使用JDK提供的工具javac.exe對(duì)java文件進(jìn)行編譯,生成擴(kuò)展名為.class字節(jié)碼文件

3. 使用JDK提供的工具java.exe對(duì)字節(jié)碼文件進(jìn)行運(yùn)行

Java的最小程序單元是類


–[修飾符] class [類名]

–{

–}

※ ?要點(diǎn)總結(jié)

1. Java關(guān)鍵字:class (含義:類);

2. 類名,只要是一個(gè)合法的標(biāo)識(shí)符即可。但實(shí)際上推薦類名應(yīng)該是一個(gè)或多個(gè)有意義的單詞連綴而成,而且每個(gè)單詞的首字母要大寫。如: public class HelloWorld{} 。

一個(gè)Java程序


public class HelloWorld{

? ? ?public static void main(String[] args){

? ? ? ? ?System.out.println("Hello World!");

? ? ?}

}

運(yùn)行Java程序的兩個(gè)步驟


D:\>javac HelloWorld.java

D:\>java HelloWorld

Hello World!

※? 要點(diǎn)總結(jié)

1. *.java源代碼——使用javac命令編譯——生成一個(gè)或多個(gè)*.class文件。

? ? ? javac-d [目錄](méi) [Java源文件]- 目錄指定將生成二進(jìn)制文件放到哪個(gè)目錄下;

? ? ? 無(wú)需指定生成文件的文件名,因?yàn)樯晌募偸牵侯惷?class;

? ? ? Java源文件中定義N個(gè)類,將會(huì)生成N個(gè)class文件。 每個(gè)class對(duì)應(yīng)一個(gè)類;

? ? ? 每個(gè)Java源文件可以包含多個(gè)類;

2. *.class文件,使用java命令執(zhí)行。運(yùn)行時(shí)只需輸入.class文件名。

? ? java -cp [目錄](méi) [Java類名] -目錄指定JVM到哪個(gè)目錄下去搜索Java類;

? ?如果沒(méi)有指定-cp選項(xiàng),java命令是根據(jù)CLASSPATH環(huán)境變量來(lái)搜索Java類;

java源文件命名規(guī)則


1.源文件必須以.java為后綴。

2.每個(gè)編譯單元(類文件)都僅能有一個(gè)public class。

3.如果源程序中定義了public類那么源文件名必須與類名一樣。

4.一個(gè)類文件(*.java)中可以不存在public class,如果沒(méi)有定義public類,那么源文件名可以任意。

5.class不可以是private和protected。默認(rèn)(friendly):包內(nèi)可見。public:所有類可見。

設(shè)置CLASSPATH環(huán)境變量


1. 通常無(wú)需設(shè)置CLASSPATH環(huán)境變量。因?yàn)镴DK會(huì)自動(dòng)在當(dāng)前路徑下搜索類。但如果設(shè)置了CLASSPATH環(huán)境變量,那就需要在CLASSPATH環(huán)境變量中增加一個(gè)點(diǎn)號(hào)(.)代表當(dāng)前路徑。

2. 點(diǎn)擊電腦→屬性→高級(jí)→環(huán)境變量→用戶變量點(diǎn)新建,變量名為:CLASSPATH,變量值為:.;存放*.class的路徑。

JDK,JRE,JVM三者間的關(guān)系


我們開發(fā)的實(shí)際情況是:我們利用JDK(調(diào)用JAVA API)開發(fā)了屬于我們自己的JAVA程序后,通過(guò)JDK中的編譯程序(javac)將我們的文本java文件編譯成JAVA字節(jié)碼,在JRE上運(yùn)行這些JAVA字節(jié)碼,JVM解析這些字節(jié)碼,映射到CPU指令集或OS的系統(tǒng)調(diào)用

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,564評(píng)論 19 139
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法,繼承相關(guān)的語(yǔ)法,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 34,697評(píng)論 18 399
  • 夜幕低垂,星光閃爍,今夜格外的靜謐。百合跟隨昭雪來(lái)到一處仿若是夢(mèng)中離恨天的所在,推門而入,香氣撲面而來(lái),到處的紗...
    喜驁閱讀 4,912評(píng)論 2 3
  • 文有“斫去歸婆娑,人道是,清光更多”的人消瘦,武有“沙場(chǎng)秋點(diǎn)兵,卻君王天下事”的昂首前瞻。 ——《稼軒記》 盲鍾拾...
    笨魚也想飛閱讀 167評(píng)論 0 0
  • 尼采在幼時(shí)學(xué)習(xí)鋼琴,在他的一生之中,琴聲總是讓他感到慰藉;出于對(duì)他的喜愛(ài),決定對(duì)不同鋼琴家的演奏風(fēng)格作一些入門學(xué)習(xí)...
    師嘉悅閱讀 1,291評(píng)論 0 2

友情鏈接更多精彩內(nèi)容