基礎(chǔ)語法
好久沒有寫文章了,最近腦子突然抽了。要開始干JAVA,希望我可以堅持下去……老規(guī)矩,妹子鎮(zhèn)樓。
首先需要了解基礎(chǔ)概念:
- 對象:對象是類的一個實例,有狀態(tài)和行為。例如,一條狗是一個對象,它的狀態(tài)有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。
- 類:類是一個模板,它描述一類對象的行為和狀態(tài)。
- 方法:方法就是行為,一個類可以有很多方法。邏輯運算、數(shù)據(jù)修改以及所有動作都是在方法中完成的。
- 實例變量:每個對象都有獨特的實例變量,對象的狀態(tài)由這些實例變量的值決定。
其實很早的時候,我對于類、對象和實例是搞不清楚的,一次偶然的機會,認(rèn)識了一位大佬,觥籌交錯中我提出了這個疑問。大佬呵呵一笑告訴了我正確的理解方式,我要開始裝逼了。
例如,我和你聊天的時候,說到了“二次元美女”這個詞,這時候在你腦海中,可能會出現(xiàn)未知女性的“剪影”,但是身高、身材、五官、發(fā)型、發(fā)色和衣著,是不知道的。如果這時候我說‘櫻島麻衣學(xué)姐’,那么你腦海中就會直接浮現(xiàn)出來,麻衣學(xué)姐的衣著外貌。這里面“二次元美女”就是類,“櫻島麻衣學(xué)姐”就是類的實例,中間轉(zhuǎn)換的過程就是實例化。雖然不是十分恰當(dāng),但是能幫助解決理解,他們之間的差異。
注意事項
- 小寫敏感:Java 是大小寫敏感的,這就意味著標(biāo)識符 Tmd與 TMD是不同的。
- 類名:對于所有的類來說,類名的首字母應(yīng)該大寫。如果類名由若干單詞組成,那么每個單詞的首字母應(yīng)該大寫,例如 MyFirstJavaClass ,就是首字母大寫駝峰體!。
- 方法名:所有的方法名都應(yīng)該以小寫字母開頭。如果方法名含有若干單詞,則后面的每個單詞首字母大寫,例如 myFirstJavaMethod ,就是首字母小寫駝峰體!。
- 源文件名:源文件名必須和類名相同。當(dāng)保存文件的時候,你應(yīng)該使用類名作為文件名保存(切記 Java 是大小寫敏感的),文件名的后綴為 .java。(如果文件名和類名不相同則會導(dǎo)致編譯錯誤)。
- 主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法開始執(zhí)行。
標(biāo)識符
Java 所有的組成部分都需要名字。類名、變量名以及方法名都被稱為標(biāo)識符。關(guān)于 Java 標(biāo)識符,有以下幾點需要注意:
- 所有的標(biāo)識符都應(yīng)該以字母(A-Z 或者 a-z),美元符($)、或者下劃線(_)開始
- 首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下劃線(_)或數(shù)字的任何字符組合
- 關(guān)鍵字不能用作標(biāo)識符
- 標(biāo)識符是大小寫敏感的
- 合法標(biāo)識符舉例:age、$salary、_value、__1_value
- 非法標(biāo)識符舉例:123abc、-salary
修飾符
像其他語言一樣,Java可以使用修飾符來修飾類中方法和屬性。主要有兩類修飾符:
- 訪問控制修飾符 : default, public , protected, private
- 非訪問控制修飾符 : final, abstract, static, synchronized
變量
Java 中主要有如下幾種類型的變量
- 局部變量
- 類變量(靜態(tài)變量)
- 成員變量(非靜態(tài)變量)
數(shù)組
數(shù)組是儲存在堆上的對象,可以保存多個同類型變量。
枚舉
Java 5.0引入了枚舉,枚舉限制變量只能是預(yù)先設(shè)定好的值。使用枚舉可以減少代碼中的 bug。
例如,我們?yōu)楣暝O(shè)計一個程序,它將限制果汁為小杯、中杯、大杯。這就意味著它不允許顧客點除了這三種尺寸外的果汁。
注意:枚舉可以單獨聲明或者聲明在類里面。方法、變量、構(gòu)造函數(shù)也可以在枚舉中定義。
注釋
/* 這是第一個Java程序
* 它將輸出 Hello World
* 這是一個多行注釋的示例
*/
// 這是單行注釋的示例
/* 這個也是單行注釋的示例 */
繼承
在 Java 中,一個類可以由其他類派生。如果你要創(chuàng)建一個類,而且已經(jīng)存在一個類具有你所需要的屬性或方法,那么你可以將新創(chuàng)建的類繼承該類。
利用繼承的方法,可以重用已存在類的方法和屬性,而不用重寫這些代碼。被繼承的類稱為超類(super class),派生類稱為子類(subclass)。
接口
在 Java 中,接口可理解為對象間相互通信的協(xié)議。接口在繼承中扮演著很重要的角色。接口只定義派生要用到的方法,但是方法的具體實現(xiàn)完全取決于派生類。
Java 源程序與編譯型運行區(qū)別
全文結(jié)束