Thinking in Java 第四章 第五章

2021-07-03 04:33:25 字數 1132 閱讀 1778

第四章:

1、for迴圈:可以在初始化和步進控制部分,採用逗號表示式,處理多個相同型別變數的計算。

2、break和continue都是結束當前迴圈,不再執行當前迴圈剩餘的語句。不同的是,break結束迴圈語句,continue從迴圈下乙個開始節點繼續執行。

3、switch可使用的型別:int、char、enum

第五章:

1、構造方法:建立物件時,需要呼叫類的構造方法。如果在類中不宣告構造方法,編譯器會自動生成乙個不帶形參的預設構造方法,如果宣告了構造方法,就只能呼叫宣告好的構造方法建立物件並初始化。

2、物件初始化時的執行順序:父類的靜態**塊(包括帶初始化的成員變數)、子類的靜態**塊(包括帶初始化的成員變數)、父類的建構函式、子類的建構函式。

3、方法過載的幾個型別:形參型別、個數、順序不同;返回值型別不同。呼叫方法時,會自動匹配完全相同的形參組合,如果找不到合適的,會自動往上轉型進行呼叫。往下轉型需要強制轉換。

4、this:當前物件的引用,加上引數列表以後可以在建構函式中呼叫過載的其他建構函式(非構造方法不能呼叫建構函式,乙個建構函式中不能同時呼叫兩個其他建構函式)

5、物件初始化:

a、建立物件的過程:載入.class,生成class物件,並對所有靜態成員、靜態塊進行初始化。new為物件分配空間、對所有非靜態成員進行初始化。執行建構函式。

b、靜態成員或者靜態塊:只有在第一次生成物件或者呼叫類成員時才會呼叫或初始化、靜態塊只能處理靜態成員。非靜態塊在每次生成物件的時候都會執行,用於處理非靜態成員

6、陣列的初始化

a、int a :乙個陣列引用,未分配物件空間

b、int a = ;  

c、int a = new int[10]; (基本物件都會被初始化成預設值,物件預設值為null)

7、可變引數列表:object... list:接受任意數量的object物件,包括0個。

舉幾個列子string... list 可以匹配 a、("abc", "bbb")   b、("abc", new string("bbb"))  c、() 

匹配過載函式時,固定部分和可變部分都按照自動往上的原則進行匹配。

8、列舉型別:可配合switch使用,tostring():例項名  ordinal() 宣告順序   values() 常量構成的陣列

《Thinkinginjava》第13章 字串

字串操作是計算機程式設計中最常見的行為 string物件是不可變的。string類中那些看起來會修改string的方法,實際上都是建立了乙個全新的string物件,以包含修改後的字串的內容。而最初的string物件根本沒有改變。public class immutable public static...

異常使用 ThinkingInJava

1.在恰當的級別處理問題。在知道該如何處理的情況下才捕獲異常 2.解決問題並且重新呼叫產生異常的方法。3.進行少許修補,然後繞過異常發生的地方繼續執行。4.用別的資料進行計算,以代替方法預計會返回的值。5.把當前執行環境下能做的事情盡量做完,然後把相同的異常重拋到更高層。6.把當前執行環境下能做的事...

Thinking in java 學習筆記(二)

5.4 類訪問 對於類的訪問只有兩種 友好 沒有修飾符,包內可見 和public 5.6 內部類可以相互訪問protected修飾的方法和資料,private修飾的方法和資料不能訪問,友好 修飾的方法和資料可以相互訪問。protected 它本身是私有的,但可由從這個類繼承的任何東西或者同乙個包內的...