《Java從小白到大牛精簡版》之第4章 Java語法基礎
本章主要為大家介紹Java的一些基本語法,其中包括標識符、關鍵字、保留字、常量、變量、表達式等內容。
4.1 標識符、關鍵字和保留字
任何一種計算機語言都離不開標識符和關鍵字,因此下面將詳細介紹Java標識符、關鍵字和保留字。
4.1.1 標識符
標識符就是變量、常量、方法、枚舉、類、接口等由程序員指定的名字。構成標識符的字母均有一定的規範,Java語言中標識符的命名規則如下:
區分大小寫:Myname與myname是兩個不同的標識符。
首字符,可以是下劃線(_)或美元符或字母,但不能是數字;
除首字符外其他字符,可以是下劃線(_)、美元符、字母和數字。
關鍵字不能作為標識符。
例如,身高、identifier、userName、User_Name、$Name、_sys_val等為合法的標識符,註意中文“身高”命名的變量是合法的;而2mail、room#和class為非法的標識符,註意#是非法字符,而class是關鍵字。
註意 Java語言中字母采用的是雙字節Unicode編碼。Unicode叫作統一編碼制,它包含了亞洲文字編碼,如中文、日文、韓文等字符。**
4.1.2 關鍵字
關鍵字是類似於標識符的保留字符序列,由語言本身定義好的,不能挪作他用,Java語言中有50個關鍵字,如表4-1所示。
表 4-1 Java關鍵字
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 |
關鍵字很多這裏不再一一介紹了,但是讀者需要記住一點的是Java中的關鍵字全部是小寫字母。
4.1.2 保留字
Java中有一些字符序列即不能當作標識符使用,也不是關鍵字,也不能在程序中使用,這些字符序列稱為保留字。Java語言中的保留字只有兩個goto和const:
goto:在其他語言中叫做“無限跳轉”語句,在Java語言中不再使用goto語句,因為“無限跳轉”語句會破壞程序結構。在Java語言中goto的替換語句可以通過break、continue和return實現“有限跳轉”。
const:在其他語言中是聲明常量關鍵字,在Java語言中聲明常量使用public static final 方式聲明。
4.2 Java分隔符
在Java源代碼中,有一些字符被用作分隔,稱為分隔符。分隔符主要有:分號(;)、左右大括號({})和空白。
1. 分號
分號是Java語言中最常用的分隔符,它表示一條語句的結束。下面代碼:
int totals = 1 + 2 + 3 + 4;12
等價於
int totals = 1 + 2+ 3 + 4;1234
2. 大括號
在Java語言中,以左右大括號({})括起來語句集合稱為語句塊(block)或復合語句,語句塊中可以有0~n條語句。在定義類或方法時,語句塊也被用做分隔類體或方法體。語句塊也可以嵌套,且嵌套層次沒有限制。示例代碼如下:
public class HelloWorld { public static void main(String args[]) { int m = 5; if (m < 10) { System.out.println("<10"); } } }123456789101112
3. 空白
在Java源代碼中元素之間允許有空白,空白的數量不限。空白包括空格、制表符(Tab鍵輸入)和換行符(Enter鍵輸入),適當的空白可以改善對源代碼可讀性。下列幾段代碼是等價。
if (m < 10) { System.out.println("<10"); }12
等價於
if (m < 10) { System.out.println("<10"); }1234
等價於
if (m < 10) { System.out.println("<10"); }123
4.3 變量
變量和常量是構成表達式的重要部分,變量所代表的內部是可以被修改的。變量包括變量名和變量值,變量的聲明格式為:
數據類型 變量名 [=初始值];
變量名要遵守用標識符命名規範,卻在相關的作用域中不能有重復的變量名。變量作用域是變量的使用範圍,在此範圍內變量可以使用,超過作用域,變量內容則被釋放,根據作用域不同分為:成員變量和局部變量,示例代碼如下:
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); // 編譯錯誤 ⑥ } }12345678910111213141516171819202122232425
上述代碼中代碼第①行是聲明的成員變量y,成員變量是在類體中,而在方法之外,作用域是整個類,如果沒有初始賦值,系統會為它分配一個默認值,每一種數據類型都有默認值,int類型默認值是0。
代碼第②、③、⑤行都是聲明局部變量,局部變量是在方法或if、for和while等代碼塊中聲明的變量,第②和③行聲明局部變量作用域是整個方法,第⑤行聲明的m變量作用域是當前的if語句。
另外,代碼第④行和第⑥行會有編譯錯誤方法,這是因為第④行是因為x使用之前沒有被初始化,與成員變量不同,局部變量在使用之前必須顯示地初始化。代碼第③行是在聲明的同時初始化了。代碼第⑥行的錯誤是因為m變量超過了作用域。
4.4 常量
常量事實上是那些內容不能被修改的變量,常量與變量類似也需要初始化,即在聲明常量的同時要賦予一個初始值。常量一旦初始化就不可以被修改。它的聲明格式為:
final 數據類型 變量名 = 初始值;
final關鍵字表示最終的,它可以修改很多元素,修飾變量就變成了常量。示例代碼如下:
public class HelloWorld { // 靜態常量,替代const public static final double PI = 3.14; ① // 聲明成員常量 final int y = 10; ② public static void main(String[] args) { // 聲明局部常量 final double x = 3.3; ③ } }1234567891011121314
事實上常量有三種類型:靜態常量、成員常量和局部常量。代碼第①行的是聲明靜態常量,使用在final 之前public static修飾,用來保留字const。public static修飾的常量作用域是全局的,不需要創建對象就可以訪問它,在類外部訪問形式:HelloWorld. PI,這種常量在編程中使用很多。
代碼第②行聲明成員常量,作用域類似於成員變量,但不能修改。代碼第③行聲明局部常量,作用域類似於局部變量,但不能修改。
本章小結
本章主要介紹了Java語言中最基本的語法,首先介紹了標識符、關鍵字和保留字,讀者需要掌握標識符構成,了解Java關鍵字和保留字。接著介紹了Java中的分隔符,最後介紹了變量和常量,讀者需要掌握變量種類和作用域,以及常量的聲明。
配套視頻
http://edu.51cto.com/topic/1246.html
配套源代碼
http://www.51work6.com/book/java1.php
與本書免費版對應的還有一個收費版本:
進入百度閱讀電子書
進入圖靈社區電子書
本文出自 “「智捷課堂」關東升的博客” 博客,轉載請與作者聯系!
《Java從小白到大牛精簡版》之第4章 Java語法基礎