java語法基礎(chǔ)

1. 變量和基本數(shù)據(jù)類型

數(shù)據(jù)類型定義:一組數(shù)值和定義在數(shù)值上的操作肛宋。

1.1 8種基本數(shù)據(jù)類型

  • 1.整數(shù)
    • byte (1 byte): -128 ~ +127
    • short (2 bytes): -32768 ~ +32767
    • int (4 bytes): -2147438648 ~ +2147438647
    • long (8 bytes)
    • unsigned byte (1 byte): 0 ~ 255
    • unsigned short (2 bytes): 0 ~ 0~65535
    • unsigned int (4 bytes): 0~4294967295
    • unsigned long (8 bytes)
  • 2.浮點(diǎn)數(shù)
    • float (4 bytes): 3.4E-38 - 3.4E+38
      • 精度: 8, 23
    • double (8 bytes): 1.7E-308 ------ 1.7E+308
      • 精度: 11, 52
  • 3.字符
    • char
      ‘1’, ‘2’, ‘a(chǎn)’, ‘%’
  • 4.boolean 類型
    • true
    • false

1.2 操作符

優(yōu)先級:單目運(yùn)算高于雙目運(yùn)算阳掐,數(shù)學(xué)運(yùn)算>關(guān)系運(yùn)算>邏輯運(yùn)算闺鲸,賦值運(yùn)算最低。有印象即可督勺,不清楚的用()解決一起

  • +: int a = 1 + 5;
  • - : long b = 3 - 5;
  • * : long c = 5 * 4;
  • / : unsigned d = 15 / 3;
  • % : unsigned e = 5 % 3;
  • >, <, >=, <=, ==
  • bool

1.3 數(shù)組

  • 格式
 int array[100];
 int [] array = new int[100];
 array[0] = 5;
 int length = array.length();
 int[] arr = {11, 22, 33, 44, 55}

2.表達(dá)式和賦值

  • 1.基本的數(shù)學(xué)計(jì)算
 “1 + 2”, “3 / 5”, “3 > 5”, “1 == 2”

每個(gè)表達(dá)式都有?個(gè)返回值

  • 2.?法調(diào)?
“sqrt(1)”, “dog.walk()”

?法調(diào)?可以有返回值,也可以沒有返回值 (或者說是返回值為空 void)榴都。表達(dá)式和語句都以 “;” 表示結(jié)束

3. 控制語句

3.1 邏輯控制語句

  • if
if (condition) { action; }
  • if … else …
 if (condition) { action1; } else { action2; }
  • 代碼塊
    • 使? “{}” 包括起來的單個(gè)或者多個(gè)語句或表達(dá)式

3.2 循環(huán)和控制語句

  • for
for (initial; condition; iteration) {}
for (T iterator : Collection<T>) {}     // 增強(qiáng)for循環(huán)
  • while
while (condition) {}
  • 執(zhí)?控制語句
return <返回值>: 從?法中返回
break: 退出當(dāng)前循環(huán)契吉,即退出整個(gè)循環(huán)
continue: 跳出當(dāng)前循環(huán),執(zhí)行下次循環(huán)
throw: 拋出異常
  • 構(gòu)造語句
    • new: ?成?個(gè)對象
      • Integer a = new Integer(3);

4. java方法

  • 格式:
  <返回類型> ?法名(<參數(shù)類型> 參數(shù)名, …) 
      {代碼; return <返回值>;}
  • ?個(gè)?法由 “?法名 + 參數(shù)類型” 確定屑迂,即方法簽名
  • 重載:
  • 相同?法名,不同參數(shù)類型, 是不同的?法 (重載override)浸策。即方法名相同,參數(shù)列表不同(參數(shù)個(gè)數(shù)或參數(shù)類型不同)惹盼,與返回值類型無關(guān)

注意:java的方法是平級的庸汗,不可嵌套定義,一個(gè)方法不可以做為另外一個(gè)方法的參數(shù)手报。

5. JAVA類型模型

5.1 基本概念

  • 類:類是?個(gè)模板蚯舱,它描述?類對象的?為和狀態(tài)
    • 語義上表達(dá)的是?類實(shí)體(對象)的抽象
  • 對象:對象是類的?個(gè)實(shí)例改化,有具體的狀態(tài)
    • 語義上是表達(dá)?個(gè)java類的實(shí)體
  • Java?的常量和變量都可以對應(yīng)于?個(gè)對象,這個(gè)對象的?為和具有的屬性是由類來定義的
  • Java程序的基本結(jié)構(gòu)就是?系列類的定義枉昏,類之間的關(guān)系和具體類的對象之間的互相操作

5.2 類

  • 注意:
    • 在Java中的慣例是?個(gè)?件中存放?個(gè)public類陈肛,文件名與類名相同
    • 格式
    class Person {
      String name;
      int age;
      
      public void speak(){
        System.out.println("speak English");
      }
    }
    

5.3 對象

  • 對象是?般情況下Java語??的”?等公?”
  • 對象可以賦值到?個(gè)變量
    • 對象是通過new語句進(jìn)?創(chuàng)建
Person p = new Person();

5.4 JAVA?法和成員變量

  • 成員變量:類中定義的該類的實(shí)例對象所具有的狀態(tài),其作?域在類中,或?qū)ο笾?/li>
  • 成員?法:類中定義的該類的實(shí)例對象所具有的?為兄裂,用來操作成員變量
  • 靜態(tài)?法: ?屬于類本身的?法

5.5 權(quán)限修飾符

  • 修飾符?于控制變量, 類 的作?域和?些訪問限制
  • 訪問權(quán)限修飾符: public, protected, private, default(即不設(shè)置)
權(quán)限修飾符 同一個(gè)類 同一個(gè)包 不同包的子類 不同包的非子類
Private
Default
Protected
Public

5.6 狀態(tài)修飾符

  • static: 把?法或者成員變量設(shè)置為類共享句旱,具有static修飾的?法和變量的類, 我們稱之為”靜態(tài)類”
  • final
    • final <類>; —> 防?類被繼承
    • final <變量>; —> 防?變量被修改引?到另外?個(gè)對象, 可稱為 “常量”
    • final <?法>; —> 防??法被重載(override)

6. 包和層次結(jié)構(gòu)

  • 為什么要有包
    • 將字節(jié)碼(.class)進(jìn)行分類存放,包其實(shí)就是文件夾
  • 好處
    • 方便管理類晰奖,避免一個(gè)文件夾中有太多的類難以管理谈撒。
    • “包”: ?來表示具有層次結(jié)構(gòu)的命名空間,防止重復(fù)類名出現(xiàn)沖突
  • 定義包的格式
    package 包名;
    
  • 定義包的注意事項(xiàng)
    • package語句必須是程序的第一條可執(zhí)行的代碼
    • package語句在一個(gè)java文件中只能有一個(gè)
    • 如果沒有package匾南,默認(rèn)表示無包名
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末啃匿,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子蛆楞,更是在濱河造成了極大的恐慌立宜,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,214評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臊岸,死亡現(xiàn)場離奇詭異橙数,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)帅戒,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評論 2 382
  • 文/潘曉璐 我一進(jìn)店門灯帮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人逻住,你說我怎么就攤上這事钟哥。” “怎么了瞎访?”我有些...
    開封第一講書人閱讀 152,543評論 0 341
  • 文/不壞的土叔 我叫張陵腻贰,是天一觀的道長。 經(jīng)常有香客問我扒秸,道長播演,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,221評論 1 279
  • 正文 為了忘掉前任伴奥,我火速辦了婚禮写烤,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘拾徙。我一直安慰自己洲炊,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著暂衡,像睡著了一般询微。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上狂巢,一...
    開封第一講書人閱讀 49,007評論 1 284
  • 那天拓提,我揣著相機(jī)與錄音,去河邊找鬼隧膘。 笑死代态,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的疹吃。 我是一名探鬼主播蹦疑,決...
    沈念sama閱讀 38,313評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼萨驶!你這毒婦竟也來了歉摧?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,956評論 0 259
  • 序言:老撾萬榮一對情侶失蹤腔呜,失蹤者是張志新(化名)和其女友劉穎叁温,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體核畴,經(jīng)...
    沈念sama閱讀 43,441評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡膝但,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了谤草。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片跟束。...
    茶點(diǎn)故事閱讀 38,018評論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖丑孩,靈堂內(nèi)的尸體忽然破棺而出冀宴,到底是詐尸還是另有隱情,我是刑警寧澤温学,帶...
    沈念sama閱讀 33,685評論 4 322
  • 正文 年R本政府宣布略贮,位于F島的核電站,受9級特大地震影響仗岖,放射性物質(zhì)發(fā)生泄漏逃延。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評論 3 307
  • 文/蒙蒙 一箩帚、第九天 我趴在偏房一處隱蔽的房頂上張望真友。 院中可真熱鬧黄痪,春花似錦紧帕、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,240評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽愈案。三九已至,卻和暖如春鹅搪,著一層夾襖步出監(jiān)牢的瞬間站绪,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,464評論 1 261
  • 我被黑心中介騙來泰國打工丽柿, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留恢准,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,467評論 2 352
  • 正文 我出身青樓甫题,卻偏偏與公主長得像馁筐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子坠非,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評論 2 345

推薦閱讀更多精彩內(nèi)容