java學習——物件導向之繼承
物件導向之繼承
1.java中只允許多層繼承,而不允許多重繼承。
//多重繼承,錯誤,相當於一個人只能有一個親生父親
class A{}
class B{}
class C extends A,B{}
//多層繼承,正確,相當於兒子繼承父親,孫子繼承兒子一樣
class A{}
class B extends A{}
class C extends B{}
2.子類繼承父類的時候會繼承父類的所有操作,但對於所有的私有操作屬於隱式繼承,而非私有操作屬於顯式繼承
3.在子類物件構造前一定會預設呼叫父類的構造方法,以保證父類物件先例項化,子類物件再例項化
方法的重寫:子類可以重寫父類中的方法,重寫後子類中的方法將會覆蓋掉父類中的同名方法。注意:被子類所重寫的方法不能擁有比父類更嚴格的訪問控制許可權!
常見面試題:
方法的重寫與過載的區別?
1.英語單詞不同:過載:Overloading 重寫:override。
2.作用範圍不同:過載:發生在一個類裡面;重寫:發生在繼承關係中。
3.定義不同:過載:方法名相同,引數的型別及個數不同;重寫:方法名、引數型別、個數以及方法返回值都相同。
4.許可權:過載無許可權要求;重寫有嚴格的許可權要求,即被重寫的方法不能擁有比父類更為嚴格的訪問控制許可權。
相關文章
- java物件導向繼承Java物件繼承
- 物件導向之繼承物件繼承
- 物件導向之_繼承概念物件繼承
- Java物件導向03——三大特性之繼承Java物件繼承
- Java中物件導向三大特性之繼承Java物件繼承
- 21. 物件導向之繼承物件繼承
- 物件導向--繼承物件繼承
- 物件導向:繼承物件繼承
- 物件導向-繼承物件繼承
- JAVA物件導向高階一:繼承Java物件繼承
- 5-Java物件導向-繼承(下)Java物件繼承
- 《JavaScript物件導向精要》之五:繼承JavaScript物件繼承
- 物件導向 -- 三大特性之繼承物件繼承
- JAVA學習線路:day01物件導向(繼承、抽象類)Java物件繼承抽象
- Golang物件導向_繼承Golang物件繼承
- java-物件導向程式設計--繼承Java物件程式設計繼承
- Javascript物件導向與繼承JavaScript物件繼承
- Javascript實現物件導向繼承JavaScript物件繼承
- JAVA物件導向基礎--封裝 繼承 多型Java物件封裝繼承多型
- [JAVA] Java物件導向三大特徵:封裝、繼承、多型Java物件特徵封裝繼承多型
- 說清楚javascript物件導向、原型、繼承JavaScript物件原型繼承
- JavaScript物件導向 ~ 原型和繼承(1)JavaScript物件原型繼承
- JavaScript物件導向那些東西-繼承JavaScript物件繼承
- JavaScript物件導向—繼承的實現JavaScript物件繼承
- Dart語法篇之物件導向繼承和Mixins(六)Dart物件繼承
- Python - 物件導向程式設計 - 三大特性之繼承Python物件程式設計繼承
- JS物件導向程式設計(四):繼承JS物件程式設計繼承
- JS物件導向:JS繼承方法總結JS物件繼承
- python物件導向的繼承-組合-02Python物件繼承
- go物件導向思想:封裝、繼承、多肽Go物件封裝繼承
- #JAVA#物件導向(繼承中成員方法的關係)Java物件繼承
- JS的物件導向(理解物件,原型,原型鏈,繼承,類)JS物件原型繼承
- ~~核心程式設計(五):物件導向——多繼承~~程式設計物件繼承
- 物件導向 -- 三大特性之繼承 補充 抽象類 介面類物件繼承抽象
- JAVA物件導向高階:繼承:許可權修飾符(繼承注意事項) 單繼承 Object類 方法重寫Java物件繼承Object
- JavaScript 複習之 物件的繼承JavaScript物件繼承
- java核心思想物件導向三大特性(封裝,繼承,多型)Java物件封裝繼承多型
- JavaScript物件導向之二(建構函式繼承)JavaScript物件函式繼承