什么每次都要寫無參構造方法?無參構造的運行原理


參考:https://blog.csdn.net/Akanarika520/article/details/84927403

無參構造器也叫無參構造方法,在我們創建類時候,可以不用寫構造方法,因為系統會默認給我們提供一個無參構造方法,如果我們自己寫了無參構造方法,那么我們這個就將默認的覆蓋了。
既然會默認提供無參構造方法,為什么每次都要寫無參構造方法呢
當我們創建一個類的時候,如果我們沒有創建一個構造方法(哪怕是無參數的)。JVM會幫助我們創建一個默認的構造方法,也稱為無參構造方法。但是如果我們創建一個構造方法時,JVM就不會再為我們生成一個默認的構造方法。有時有必要的顯示的寫出這個默認構造函數,也就是無參構造函數。所以當這個類被繼承時,子類就會默認的調用這個無參構造方法。

如果你想顯示的調用父類的構造方法,可以使用super()在子類的構造方法中的第一句。(構造方法中只能調用構造方法一次)。如果你在父類中沒有寫無參構造方法,那么在子類的構造方法中必須顯示的調用父類中的有參數的構造方法(寫在第一句)。
啟示總結:
1.無參構造運行是需要往上一級一級找無參,甚至找到object
2.如果其中一級只有有參,沒有無參,會發生錯誤。但只有無參,沒有有參一定不會出錯。
3.在以后的Java開發中,若一個POJO類要有帶參構造方法,要記得先寫無參構造方法。防止類追溯時找不到上級,報錯。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM