1 Java 主類結(jié)構(gòu)
包聲明
一個Java程序是由若干個類組成的。
語句package Number聲明該類所在的包為Number。
聲明成員變量和局部變量
類的全局變量(成員變量):類的屬性 聲明在類體中
局部變量:方法中的屬性 聲明在方法體中
編寫主方法
main()方法是類體中的主方法,從{開始到}結(jié)束。
public、static、void分別是main()方法的權(quán)限修飾符、靜態(tài)修飾符、返回值修飾符。
Java中的main()方法必須聲明為public static void。
導(dǎo)入API類庫
Java中通過import關(guān)鍵字導(dǎo)入相關(guān)的類。
API文檔是程序開發(fā)人員不可或缺的工具
2 基本數(shù)據(jù)類型
有8種基本數(shù)據(jù)類型來存儲數(shù)值、字符和布爾值。
- 數(shù)值型
整數(shù)類型 byte short int long
浮點類型 float double - 字符型
- 布爾型
整數(shù)類型
十進制:不能以0開頭,0除外
八進制:必須以0開頭
十六進制:必須以0x或0X開頭
| 數(shù)據(jù)類型 | 占用空間(位) | 字節(jié) |
|---|---|---|
| byte | 8 | 1 |
| short | 16 | 2 |
| int | 32 | 4 |
| long | 64 | 8 |
每種類型都有取值范圍,如byte為-128~127
超出范圍會出錯
對于long型,若賦給的值超出int范圍,則需要在數(shù)字后加L或1,表示該數(shù)值為長整數(shù)
如:long num = 2147483650L
浮點類型
| 數(shù)據(jù)類型 | 占用空間(位) | 字節(jié) |
|---|---|---|
| float | 32 | 4 |
| double | 64 | 8 |
小數(shù)默認(rèn)被看作double型
若使用float則需要在后面添加F或f。
double后面D或d,可加可不加。
字符類型
- char型
字符類型char用于存儲單個字符,占用16位,2字節(jié)的內(nèi)存空間。
單引號' '為字符型變量
雙引號" "為字符串,即使只有一個字符。
定義char字符變量
char x = 'a';
char x = 97;
二者等價
轉(zhuǎn)義字符
與C中含義相同。
將轉(zhuǎn)義字符賦值給字符變量時,與字符常量值一樣,需要使用單引號。布爾類型
只有true和false兩個值。
不能與整數(shù)類型轉(zhuǎn)換。
boolen b = true;
3 變量與常量
標(biāo)識符和關(guān)鍵字
標(biāo)識符
第一個字符不能是數(shù)字
由任意順序的字母、下劃線、美元符號和數(shù)字組成,且不能是Java中的保留關(guān)鍵字。關(guān)鍵字
不可以作為標(biāo)識符來使用。
聲明變量

程序執(zhí)行時,程序代碼會加載到內(nèi)存中的程序區(qū),數(shù)據(jù)暫時存儲在數(shù)據(jù)區(qū)中。
Java中允許使用漢字或其他語言文字作為變量名
如int 年齡 = 21
但建議盡量不要使用這些語言文字作為變量名。
聲明常量
在Java中聲明常量,除了要指定數(shù)據(jù)類型以外,還需要通過final關(guān)鍵字進行限定。
final常量只能被賦值一次。
final double PI = 3.1415926D;
常量名通常使用大寫字母
當(dāng)定義的final常量屬于“成員變量”時,必須在定義時就設(shè)定它的初值,否則將會產(chǎn)生編譯錯誤。
變量的有效范圍
成員變量
類體中所定義的變量。
在整個類中都有效。
分為兩種:
實例變量:int x = 45;
靜態(tài)變量(類變量):static int y = 90;
靜態(tài)變量的有效范圍可以跨類,可以直接以類名.靜態(tài)變量的方式在其他類內(nèi)使用。局部變量
在方法內(nèi)部定義,“{”與“}”之間的代碼中聲明的變量,只在當(dāng)前代碼塊中有效。

4 運算符(基本與C無二)
賦值運算符
-
算術(shù)運算符
-
自增和自減運算符
-
比較運算符
邏輯運算符
注意結(jié)合方向

&與&&的區(qū)別:
&會判斷兩個表達(dá)式
&&當(dāng)?shù)谝粋€表達(dá)式為false時不去判斷第二個了,直接輸出結(jié)果從而節(jié)省計算機判斷的次數(shù)。
- 位運算符
針對兩個整形數(shù)據(jù)a、b的對應(yīng)位進行邏輯運算。
按位與&
按位或|
按位取反~
按位異或^
移位操作
移位操作
可以實現(xiàn)整數(shù)除以或乘以2n
例如:
y<<2與y*4的結(jié)果相同;y>>1與y%2的結(jié)果相同。
左移<< 右移>> 無符號右移>>>
左移:移空部分補0
右移:如果最高位是0 ,右移空的位就填0;
如果最高位是1,則右移空的位就填1。

無符號右移:左側(cè)被移空的高位都填入0
移位運算符適用的數(shù)據(jù)類型有:
byte short char int long
- 三元運算符
條件式?值1:值2
條件式值為true,取1,否則取2。
等價于
if …… else語句
數(shù)據(jù)類型轉(zhuǎn)換
-
隱式類型轉(zhuǎn)換
-
顯示類型轉(zhuǎn)換
代碼注釋與編碼規(guī)范
注釋
- 單行注釋 //
- 多行注釋
/*
注釋內(nèi)容
*/
多行注釋中可嵌套單行注釋
多行注釋中不可嵌套多行注釋
- 文檔注釋
/** 注釋 */
編碼規(guī)范
- 每條語句單獨一行,分號結(jié)束
- 盡量每個變量的聲明單獨占一行
對于局部變量應(yīng)在聲明的同時對其進行初始化。 - Java中關(guān)鍵詞之間的多個空格均被視作一個。
- 多加注釋




