3.基本詞匯:空白分隔符(whitespace)標識符(identifiers)常量(literal)注釋(comments)分隔符(separators)java要害字 java類庫 3 數據類型、變量、數組 1.Java語言是強類型語言,java定義了8個簡單數據類型:byte short int long char float double Boolean
5.1.1 if 條件分支語句 If (condition)//condition只能是布爾型 Statement; Else if (condition) Statement; Else if (condition) Statement; …………… Else Statement; 5.1.2switch多路分支語句
switch(expression) { case value1: statement; break; case value2: statement; break; ……………. default: statement; } //其中expression必須為byte,short,int 或者char 類型,每個case之后的value必須是與表達式類型兼容的一個常量 break用于跳出整個switch語句。假如省略break,則每個語句都被遍歷,符合條件就被執行,直到switch末尾或者碰到break為止。 例如: switch(expression) { case value1: case value2: case value3: statement; break; case value4: case value5: statement; break; ……………. default: statement; } 注重:switch 語句只能測試相等的情況,而if可計算任何類型的布爾表達式。 同一個switch語句中沒有兩個相同的case常量,嵌套switch的外部case常量和內部case常量除外。 Switch 語句通常比if語句更有效。
5.2循環語句
包括:while do while for 5.2.1 while循環 格式: while(condition) { //body of loop } //condition為布爾表達式 空循環在Java中是合法的。 空語句是只有一個分號(;)的語句。例如; int i=100;int j=200; while(++i < --j) //++i的值和i同步 ; //;可以和while語句連一塊為while(++i< --j); system.out.println(“i=” + i); 當然上面的例子可以寫為: int i=100;int j=200; while (i<j){ i++;j--; } System.out.println("i=" + i);
5.2.2 do-while循環 格式: do { //body of loop } while (condition);//不要漏掉;
循環至少被執行一次。 例子: int n=10; do { system.out.println(“n=” + n); n--; } while (n>0); 可以寫為以下,更為高效。 int n=10; do { system.out.println(“n=” + n); } while (--n>0);//--n的值與n的值同步
5.2.3 for 循環 格式: for (initialization ;condition ; iteration) { //body of loop } //假如只有一條語句需要重復則{ }沒有必要。初始化表達式只被執行一次。例如for(i=0;i<10;i++) 中i=0只執行1次!!!
在for循環中聲明循環控制變量。例如: for (int i=0;i<10;i++) { …………. }//i的作用域在for循環執行后就結束了
在for循環中使用“,”。例如: for (a=1 , b=4;a<b ; a++ , b--) 注重:在Java中,逗號僅僅是一個分隔符,只適用于for循環!!!
主要有public private protected 默認訪問級別(包內public) 類中的private成員為此類私有,不能為該類外的所有代碼訪問,包括子類。 main()方法老是被public指示符修飾,因為他要被java運行時系統調用。若沒有public,編譯提示:Main method not public
7.7;理解static 假如一個成員被聲明為static,他就能夠在他的類的對象被創建之前被訪問,不必引用任何對象。最常見的例子是main()方法,因為在程序開始時必須調用main(),所以他被聲明為static。若沒有static,編譯提示: Exception in thread "main" java.lang.NoSUChMethodError: main 參見大全125頁 類變量:所有的實例共用一個變量。 類方法: 1.僅能直接調用其他的static方法 2.只能直接調用static變量(數據),調用任何實例變量都是錯誤的。 但是,可以通過聲明所在類的對象來訪問實例變量。 3.不能以任何方式引用this和super。因為他們代表對象。 4.類方法可以有自己的自變量。 以上幾點適用于main函數,轉到8。1
調用方法: class_name.variable class_name.method()
static塊的聲明方法: static { system.out.println(“This is a static block”); } 調用一個類方法的順序是:首先它所在的類的static變量被初始化一次 再者,static塊被只初始化一次,后者,類方法執行。 例如: class userstatic{ static int i=3; static int j; static void meth(int x){ system.out.println(“x=”+x); system.out.println(“i=”+i); system.out.println(“j=”+j); } static{ system.out.println(“static block initialized”); b=a*4; }
public void main(String[] args){ meth(42); } }
輸出結果為: static block initialized x=42 i=3; j=12
7.8介紹final
變量聲明為final即為常量,類似于C/C++中的const。例如: final int FLAG=1; final變量一般都大寫,在實例中不占內存,實質上是常數。雖然這樣,但是仍須將類實例化后才能訪問,不像static那樣。 final的其他兩個作用在繼續中: 1.final 方法可以防止被子類覆蓋,但是可以在其他類中被訪問。 2.final類可以防止被繼續。