原文:為什么java的構造方法中this()或者super()要放在第一行

看Head First Java 頁 ,書中提到 this 只能用在構造函數中,且它必須是第一行語句 ,不明白原因,查資料發現知乎已經有相關問題,搬運過來做個記錄。 https: www.zhihu.com question : 在構造函數中,如果你不指定構造器之間的調用關系,那么編譯器會給你加上super 目的是在初始化當前對象時,先保證了父類對象先初始化。所以,你指定了構造函數間的調用,那么t ...

2019-08-19 07:24 0 714 推薦指數:

查看詳情

為什么java構造方法this()或者super()要放在第一行

java構造方法如果自己顯性的調用super()的時候一定要放在第一行,如不是的話就會報錯。 為什么一定要在第一行?   super()在第一行的原因就是: 子類有可能訪問了父類對象, 比如在構造函數中使用父類對象的成員函數和變量, 在成員初始化使用了父類, 在代碼塊中使用了父類 ...

Thu Jul 28 02:14:00 CST 2016 0 9170
java 構造方法super()和this()

1)super(參數):調用基類的某一個構造函數(應該為構造函數第一條語句) 2)this(參數):調用本類另一種形成的構造函數(應該為構造函數第一條語句) 3)super: 它引用當前對象的直接父類的成員(用來訪問直接父類中被隱藏的父類成員數據或函數,基類與派生類中有相同 ...

Thu Dec 20 03:35:00 CST 2018 0 629
java 構造方法super()的作用?

手賤百度了一下 :java里面自定義類的有參構造方法為什么不用super() 舉個例子: 如果只是這樣,那么構造Son之前會在后台調用一下super()函數,調用過程你看不到,但是確實執行了,結果是先father后son但是這種時候你顯示的寫個super就沒有意義 ...

Sun Apr 30 07:29:00 CST 2017 0 4605
為什么java構造函數的構造器只能在第一行寫this() 或者super() ?

最近在看內部類, 但是被“為什么匿名內部類或者局部內部類使用方法的局部變量時, 局部變量一定得是final類型”困擾着, 在網上查找資料的時候, 發現我對類初始化完全不了解, 之前的認識都是錯誤! 所以回頭又看了看基礎的初始化, 在看初始化的時候, 就發現一點, 就是“為什么只能在構造器的第一行寫 ...

Sat Mar 28 05:42:00 CST 2015 0 4200
構造方法super()的作用

復習:名稱Java繼承,子類實例化時,調用父類的無參構造方法https://blog.csdn.net/Peng_Hong_fu/article/details/52862300 在類的繼承,子類的構造方法默認會有super()語句存在,相當於執行父類的相應構造方法的語句 如下面代碼 ...

Fri Jul 09 19:34:00 CST 2021 0 173
Java構造方法

Java構造方法構造器) 定義 一個在創建對象時自動被調用的特殊方法 作用 為對象進行初始化(成員變量)工作,即初始化類對象的屬性,而構造對象是通過new關鍵字 特征 構造器是一種特殊的方法 構造方法的名稱必須跟類名保持一致 構造方法雖然有返回值(返回一個已經初始化好 ...

Wed Apr 17 02:11:00 CST 2019 0 2747
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM