《Java從小白到大磐鸾ィ》紙質(zhì)版已經(jīng)上架了!C写睢窥翩!
本章主要為大家介紹Java的一些基本語法,其中包括標(biāo)識符鳞仙、關(guān)鍵字寇蚊、保留字、常量棍好、變量仗岸、表達(dá)式等內(nèi)容。
4.1 標(biāo)識符借笙、關(guān)鍵字和保留字
任何一種計(jì)算機(jī)語言都離不開標(biāo)識符和關(guān)鍵字扒怖,因此下面將詳細(xì)介紹Java標(biāo)識符、關(guān)鍵字和保留字业稼。
4.1.1 標(biāo)識符
標(biāo)識符就是變量盗痒、常量、方法低散、枚舉俯邓、類、接口等由程序員指定的名字熔号。構(gòu)成標(biāo)識符的字母均有一定的規(guī)范稽鞭,Java語言中標(biāo)識符的命名規(guī)則如下:
- 區(qū)分大小寫:Myname與myname是兩個不同的標(biāo)識符。
- 首字符引镊,可以是下劃線(_)或美元符或字母朦蕴,但不能是數(shù)字吃嘿;
- 除首字符外其他字符,可以是下劃線(_)梦重、美元符兑燥、字母和數(shù)字。
- 關(guān)鍵字不能作為標(biāo)識符琴拧。
例如降瞳,身高、identifier蚓胸、userName挣饥、User_Name、$Name沛膳、_sys_val等為合法的標(biāo)識符扔枫,注意中文“身高”命名的變量是合法的;而2mail锹安、room#和class為非法的標(biāo)識符短荐,注意#是非法字符,而class是關(guān)鍵字叹哭。
**
注意 Java語言中字母采用的是雙字節(jié)Unicode編碼忍宋。Unicode叫作統(tǒng)一編碼制,它包含了亞洲文字編碼风罩,如中文糠排、日文、韓文等字符超升。**
4.1.2 關(guān)鍵字
關(guān)鍵字是類似于標(biāo)識符的保留字符序列入宦,由語言本身定義好的,不能挪作他用室琢,Java語言中有50個關(guān)鍵字乾闰,如表4-1所示。
表 4-1 Java關(guān)鍵字
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
關(guān)鍵字很多這里不再一一介紹了研乒,但是讀者需要記住一點(diǎn)的是Java中的關(guān)鍵字全部是小寫字母汹忠。
4.1.2 保留字
Java中有一些字符序列即不能當(dāng)作標(biāo)識符使用淋硝,也不是關(guān)鍵字雹熬,也不能在程序中使用,這些字符序列稱為保留字谣膳。Java語言中的保留字只有兩個goto和const:
- goto:在其他語言中叫做“無限跳轉(zhuǎn)”語句竿报,在Java語言中不再使用goto語句,因?yàn)椤盁o限跳轉(zhuǎn)”語句會破壞程序結(jié)構(gòu)继谚。在Java語言中g(shù)oto的替換語句可以通過break烈菌、continue和return實(shí)現(xiàn)“有限跳轉(zhuǎn)”。
- const:在其他語言中是聲明常量關(guān)鍵字,在Java語言中聲明常量使用public static final 方式聲明芽世。
4.2 Java分隔符
在Java源代碼中挚赊,有一些字符被用作分隔,稱為分隔符济瓢。分隔符主要有:分號(;)荠割、左右大括號({})和空白。
1. 分號
分號是Java語言中最常用的分隔符旺矾,它表示一條語句的結(jié)束蔑鹦。下面代碼:
int totals = 1 + 2 + 3 + 4;
等價(jià)于
int totals = 1 + 2
+ 3 + 4;
2. 大括號
在Java語言中,以左右大括號({})括起來語句集合稱為語句塊(block)或復(fù)合語句箕宙,語句塊中可以有0~n條語句嚎朽。在定義類或方法時,語句塊也被用做分隔類體或方法體柬帕。語句塊也可以嵌套哟忍,且嵌套層次沒有限制。示例代碼如下:
public class HelloWorld {
public static void main(String args[]) {
int m = 5;
if (m < 10) {
System.out.println("<10");
}
}
}
3. 空白
在Java源代碼中元素之間允許有空白陷寝,空白的數(shù)量不限魁索。空白包括空格盼铁、制表符(Tab鍵輸入)和換行符(Enter鍵輸入)粗蔚,適當(dāng)?shù)目瞻卓梢愿纳茖υ创a可讀性。下列幾段代碼是等價(jià)饶火。
if (m < 10) {
System.out.println("<10"); }
等價(jià)于
if (m < 10)
{
System.out.println("<10");
}
等價(jià)于
if (m < 10) {
System.out.println("<10");
}
4.3 變量
變量和常量是構(gòu)成表達(dá)式的重要部分鹏控,變量所代表的內(nèi)部是可以被修改的。變量包括變量名和變量值肤寝,變量的聲明格式為:
數(shù)據(jù)類型 變量名 [=初始值];
變量名要遵守用標(biāo)識符命名規(guī)范当辐,卻在相關(guān)的作用域中不能有重復(fù)的變量名。變量作用域是變量的使用范圍鲤看,在此范圍內(nèi)變量可以使用缘揪,超過作用域,變量內(nèi)容則被釋放义桂,根據(jù)作用域不同分為:成員變量和局部變量找筝,示例代碼如下:
public class HelloWorld {
// 聲明int型成員變量
int y; ①
public static void main(String[] args) {
// 聲明int型局部變量
int x; ②
// 聲明float型變量并賦值
float f = 4.5f; ③
// x = 10;
System.out.println("x = " + x);// 編譯錯誤,局部變量 x未初始化 ④
System.out.println("f = " + f);
if (f < 10) {
// 聲明型局部變量
int m = 5; ⑤
}
System.out.println(m); // 編譯錯誤 ⑥
}
}
上述代碼中代碼第①行是聲明的成員變量y慷吊,成員變量是在類體中袖裕,而在方法之外,作用域是整個類溉瓶,如果沒有初始賦值急鳄,系統(tǒng)會為它分配一個默認(rèn)值谤民,每一種數(shù)據(jù)類型都有默認(rèn)值,int類型默認(rèn)值是0疾宏。
代碼第②张足、③、⑤行都是聲明局部變量坎藐,局部變量是在方法或if兢榨、for和while等代碼塊中聲明的變量,第②和③行聲明局部變量作用域是整個方法顺饮,第⑤行聲明的m變量作用域是當(dāng)前的if語句吵聪。
另外,代碼第④行和第⑥行會有編譯錯誤方法兼雄,這是因?yàn)榈冖苄惺且驗(yàn)閤使用之前沒有被初始化吟逝,與成員變量不同,局部變量在使用之前必須顯示地初始化赦肋。代碼第③行是在聲明的同時初始化了块攒。代碼第⑥行的錯誤是因?yàn)閙變量超過了作用域货矮。
4.4 常量
常量事實(shí)上是那些內(nèi)容不能被修改的變量甜紫,常量與變量類似也需要初始化,即在聲明常量的同時要賦予一個初始值六剥。常量一旦初始化就不可以被修改趣避。它的聲明格式為:
final 數(shù)據(jù)類型 變量名 = 初始值;
final關(guān)鍵字表示最終的庞呕,它可以修改很多元素,修飾變量就變成了常量程帕。示例代碼如下:
public class HelloWorld {
// 靜態(tài)常量住练,替代const
public static final double PI = 3.14; ①
// 聲明成員常量
final int y = 10; ②
public static void main(String[] args) {
// 聲明局部常量
final double x = 3.3; ③
}
}
事實(shí)上常量有三種類型:靜態(tài)常量、成員常量和局部常量愁拭。代碼第①行的是聲明靜態(tài)常量讲逛,使用在final 之前public static修飾,用來保留字const岭埠。public static修飾的常量作用域是全局的盏混,不需要創(chuàng)建對象就可以訪問它,在類外部訪問形式:HelloWorld. PI惜论,這種常量在編程中使用很多许赃。
代碼第②行聲明成員常量,作用域類似于成員變量来涨,但不能修改图焰。代碼第③行聲明局部常量,作用域類似于局部變量蹦掐,但不能修改技羔。
本章小結(jié)
本章主要介紹了Java語言中最基本的語法,首先介紹了標(biāo)識符卧抗、關(guān)鍵字和保留字藤滥,讀者需要掌握標(biāo)識符構(gòu)成,了解Java關(guān)鍵字和保留字社裆。接著介紹了Java中的分隔符拙绊,最后介紹了變量和常量,讀者需要掌握變量種類和作用域泳秀,以及常量的聲明标沪。
配套視頻
http://www.zhijieketang.com/classroom/6/courses
配套源代碼
http://www.zhijieketang.com/group/5