Core Java 1 摘抄 # 第四章

前面幾章自行查看~

4.3 封裝的優點

  1. 訪問器如果要返回一個對象,再返回之前首先要對其進行克?。?code>clone)。避免其在其它地方被改變狀態,破壞封裝性。

4.5方法參數(page#121)

  1. Java采用的是按值調用。也就是說,方法所得到的是所有參數值的一個拷貝,特別是,方法不能修改傳遞給它的任何參數變量的內容。

  2. 在Java中方法參數的使用情況:

  • 一個方法不能修改一個基本數據類型的參數(即數值型和布爾型)。
  • 一個方法可以改變一個對象參數的狀態。
  • 一個方法不能讓對象參數引用一個新的對象。

4.6 對象構造

  1. 方法的簽名:方法名 + 參數類型 (例如:indexOf(int), indexOf(int, int))。

  2. 返回類型不作為簽名的一部分。也就是說,一個類中不能存在方法名和參數類型都相同,但返回類型不同的方法。

  3. 構造器

  • 如果類中不存在構造器,那么在初始化時系統會提供一個無參構造器。
  • 如果類中至少有一個構造器,但是沒有無參構造器,這時初始化類的不提供參數的話會被視為不合法,即系統不再提供無參構造器
  1. 構造器調用步驟
    1) 所有數據域被初始化為默認值(0、false或null)。
    2) 按照類聲明中出現的次序,一次執行所有域初始化語句和初始化塊。
    3) 如果構造器第一行調用了第二個構造器,則執行第二個構造器主題。
    4) 執行這個構造器的主體。

  2. 可以使用靜態初始化塊來對靜態域進行初始化。

private static int nextId;
// static initialization block
static
{
     Random generator = new Random();
     nextId = generator.nextInt(1000);
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 1. Java基礎部分 基礎部分的順序:基本語法,類相關的語法,內部類的語法,繼承相關的語法,異常的語法,線程的語...
    子非魚_t_閱讀 31,767評論 18 399
  • 本章將會介紹 存儲屬性的初始賦值自定義構造過程默認構造器值類型的構造器代理類的繼承和構造過程可失敗構造器必要構造器...
    寒橋閱讀 782評論 0 0
  • 官方文檔 初始化 Initialization是為準備使用類,結構體或者枚舉實例的一個過程。這個過程涉及了在實例里...
    hrscy閱讀 1,151評論 0 1
  • 分班 不知不覺中邵陽已經來到了報道處的樓下。他不知道該如何來形容眼前看到的一...
    會飛的綿羊浩閱讀 339評論 0 0
  • 2015年3月15日 20:12 7點的時候在外面吃飯,爸爸打電話過來。問了找工作的事情,囑咐說“好好吃飯,我再...
    環形山閱讀 407評論 0 1