Java基礎(chǔ)語法

一個Java程序可以認為是一系列對象的集合兄淫,而這些對象通過調(diào)用彼此的方法來協(xié)同工作。下面簡要介紹下類蔓姚、對象拖叙、方法和實例變量的概念。

  • 對象:對象是類的一個實例赂乐,有狀態(tài)和行為。例如咖气,一條狗是一個對象挨措,它的狀態(tài)有:顏色、名字崩溪、品種浅役;行為有:搖尾巴、叫伶唯、吃等觉既。
  • :類是一個模板,它描述一類對象的行為和狀態(tài)乳幸。
  • 方法:方法就是行為瞪讼,一個類可以有很多方法。邏輯運算粹断、數(shù)據(jù)修改以及所有動作都是在方法中完成的符欠。
  • 實例變量:每個對象都有獨特的實例變量,對象的狀態(tài)由這些實例變量的值決定瓶埋。

基本語法

編寫Java程序時希柿,應(yīng)注意以下幾點:

  • 大小寫敏感:Java是大小寫敏感的,這就意味著標(biāo)識符Hello與hello是不同的养筒。
  • 類名:對于所有的類來說曾撤,類名的首字母應(yīng)該大寫。如果類名由若干單詞組成晕粪,那么每個單詞的首字母應(yīng)該大寫挤悉,例如 MyFirstJavaClass (駝峰)。
  • 方法名:所有的方法名都應(yīng)該以小寫字母開頭兵多。如果方法名含有若干單詞尖啡,則后面的每個單詞首字母大寫橄仆。
  • 源文件名:源文件名必須和類名相同。當(dāng)保存文件的時候衅斩,你應(yīng)該使用類名作為文件名保存(切記Java是大小寫敏感的)盆顾,文件名的后綴為.java。(如果文件名和類名不相同則會導(dǎo)致編譯錯誤)畏梆。
  • 主方法入口:所有的Java 程序由public static void main(String []args)方法開始執(zhí)行您宪。

Java標(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修飾符

像其他語言一樣浴捆,Java可以使用修飾符來修飾類中方法和屬性蒜田。主要有兩類修飾符:

  • 訪問控制修飾符 : default, public , protected, private
  • 非訪問控制修飾符 : final, abstract, static, synchronized

在后面的章節(jié)中我們會深入討論Java修飾符。


Java變量

Java中主要有如下幾種類型的變量

  • 局部變量
  • 類變量(靜態(tài)變量)
  • 成員變量(非靜態(tài)變量选泻、全局變量)

Java數(shù)組

數(shù)組是儲存在堆上的對象冲粤,可以保存多個同類型變量。


Java枚舉

Java 5.0引入了枚舉页眯,枚舉限制變量只能是預(yù)先設(shè)定好的值梯捕。使用枚舉可以減少代碼中的bug。

例如餐茵,我們?yōu)楣暝O(shè)計一個程序科阎,它將限制果汁為小杯、中杯忿族、大杯锣笨。這就意味著它不允許顧客點除了這三種尺寸外的果汁。

實例

class FreshJuice {
   enum FreshJuiceSize{ SMALL, MEDIUM , LARGE }
   FreshJuiceSize size;
}
 
public class FreshJuiceTest {
   public static void main(String []args){
      FreshJuice juice = new FreshJuice();
      juice.size = FreshJuice.FreshJuiceSize.MEDIUM  ;
   }
}

注意:枚舉可以單獨聲明或者聲明在類里面道批。方法错英、變量、構(gòu)造函數(shù)也可以在枚舉中定義隆豹。


Java 關(guān)鍵字

下面列出了Java 關(guān)鍵字椭岩。這些保留字不能用于常量、變量、和任何標(biāo)識符的名稱判哥。

類別 關(guān)鍵字 說明
訪問控制 private 私有的
訪問控制 protected 受保護的
訪問控制 public 公共的
類献雅、方法和變量修飾符 abstract 聲明抽象
類、方法和變量修飾符 class
類塌计、方法和變量修飾符 extends 擴充,繼承
類挺身、方法和變量修飾符 final 最終值,不可改變的
類、方法和變量修飾符 implements 實現(xiàn)(接口)
類锌仅、方法和變量修飾符 interface 接口
類章钾、方法和變量修飾符 native 本地,原生方法(非Java實現(xiàn))
類热芹、方法和變量修飾符 new 新,創(chuàng)建
類贱傀、方法和變量修飾符 static 靜態(tài)
類、方法和變量修飾符 strictfp 嚴格,精準(zhǔn)
類伊脓、方法和變量修飾符 synchronized 線程,同步
類府寒、方法和變量修飾符 transient 短暫
類、方法和變量修飾符 volatile 易失
程序控制語句 break 跳出循環(huán)
程序控制語句 case 定義一個值以供switch選擇
程序控制語句 continue 繼續(xù)
程序控制語句 default 默認
程序控制語句 do 運行
程序控制語句 else 否則
程序控制語句 for 循環(huán)
程序控制語句 if 如果
程序控制語句 instanceof 實例
程序控制語句 return 返回
程序控制語句 switch 根據(jù)值選擇執(zhí)行
程序控制語句 while 循環(huán)
錯誤處理 assert 斷言表達式是否為真
錯誤處理 catch 捕捉異常
錯誤處理 finally 有沒有異常都執(zhí)行
錯誤處理 throw 拋出一個異常對象
錯誤處理 throws 聲明一個異潮ㄇ唬可能被拋出
錯誤處理 try 捕獲異常
包相關(guān) import 引入
包相關(guān) package
基本類型 boolean 布爾型
基本類型 byte 字節(jié)型
基本類型 char 字符型
基本類型 double 雙精度浮點
基本類型 float 單精度浮點
基本類型 int 整型
基本類型 long 長整型
基本類型 short 短整型
變量引用 super 父類,超類
變量引用 this 本類
變量引用 void 無返回值
保留關(guān)鍵字 goto 是關(guān)鍵字椰棘,但不能使用
保留關(guān)鍵字 const 是關(guān)鍵字,但不能使用
保留關(guān)鍵字 null

Java注釋

類似于C/C++榄笙,Java也支持單行以及多行注釋。注釋中的字符將被Java編譯器忽略祷蝌。

public class HelloWorld {
   /* 這是第一個Java程序
    *它將打印Hello World
    * 這是一個多行注釋的示例
    */
    public static void main(String []args){
       // 這是單行注釋的示例
       /* 這個也是單行注釋的示例 */
       System.out.println("Hello World"); 
    }
}

Java 空行

空白行茅撞,或者有注釋的行,Java編譯器都會忽略掉巨朦。


繼承

在Java中米丘,一個類可以由其他類派生。如果你要創(chuàng)建一個類糊啡,而且已經(jīng)存在一個類具有你所需要的屬性或方法拄查,那么你可以將新創(chuàng)建的類繼承該類。

利用繼承的方法棚蓄,可以重用已存在類的方法和屬性堕扶,而不用重寫這些代碼。被繼承的類稱為超類(super class)梭依,派生類稱為子類(subclass)稍算。


接口

在Java中,接口可理解為對象間相互通信的協(xié)議役拴。接口在繼承中扮演著很重要的角色糊探。

接口只定義派生要用到的方法,但是方法的具體實現(xiàn)完全取決于派生類。


Java 源程序與編譯型運行區(qū)別

如下圖所示:

image
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末科平,一起剝皮案震驚了整個濱河市褥紫,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌瞪慧,老刑警劉巖髓考,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異汞贸,居然都是意外死亡绳军,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門矢腻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來门驾,“玉大人,你說我怎么就攤上這事多柑∧淌牵” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵竣灌,是天一觀的道長聂沙。 經(jīng)常有香客問我,道長初嘹,這世上最難降的妖魔是什么及汉? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮屯烦,結(jié)果婚禮上坷随,老公的妹妹穿的比我還像新娘。我一直安慰自己驻龟,他們只是感情好温眉,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著翁狐,像睡著了一般类溢。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上露懒,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天闯冷,我揣著相機與錄音,去河邊找鬼懈词。 笑死窃躲,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的钦睡。 我是一名探鬼主播蒂窒,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼躁倒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了洒琢?” 一聲冷哼從身側(cè)響起秧秉,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎衰抑,沒想到半個月后象迎,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡呛踊,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年砾淌,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谭网。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡汪厨,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出愉择,到底是詐尸還是另有隱情劫乱,我是刑警寧澤,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布锥涕,位于F島的核電站衷戈,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏层坠。R本人自食惡果不足惜殖妇,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望破花。 院中可真熱鬧拉一,春花似錦、人聲如沸旧乞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽尺栖。三九已至,卻和暖如春烦租,著一層夾襖步出監(jiān)牢的瞬間延赌,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工叉橱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留挫以,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓窃祝,卻偏偏與公主長得像掐松,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355