Java学习笔记3——继承
繼承
繼承的好處:子類擁有父類的所有屬性和方法,peivate修飾的無效;實現代碼復用
重寫
方法重寫:子類可以重寫父類繼承的方法,當調用方法會優先調用子類的方法
語法規則:a:返回值類型 b:方法名 c:參數類型及個數 ?都要與父類繼承的方法相同,才叫方法重寫
3. 繼承的初始化順序: 1)初始化父類再初始化子類 ?2)先執行初始化對象中的屬性,再執行構造方法中的初始化
Java中的final的使用
final最終,不可修改的意思;final可以修飾類、方法、屬性和變量。final修飾類,則該類不允許被繼承;修飾方法,則該方法不可被重寫;修飾屬性,則該類屬性不會進行隱式的初始化(類初始化屬性必須有值)或者在構造方法中賦值(但只能選其一)。final修飾變量,則該變量的值只能賦一次的值,即變為常量。
Java中的super的使用
super:在對象內部使用,可以代表父類對象
訪問父類對象的屬性:super.age; ?訪問父類對象的方法:super.eat()
super的應用:1)子類的構造過程中必須調用其父類的構造方法,則系統默認調用父類無參的構造方法,隱式調用super();2)如果子類構造方法中既沒有顯式調用父類的構造方法,而父類又沒有無參的構造方法,則編譯出錯,需要在子類構造方法中的第一行加上 super().
Java中的Object類
1.Object類是所有類的父類,如果一個類沒有使用extends繼承另一個類,那么這個類默認繼承Object類。Object類中的方法適合所有子類。
1)toString():返回對象的哈希code碼,可以通過重寫toString()方法表示出對象的屬性——Eclipse有自動幫我們重寫toString()的方法,Eclipse->Source->Generate toString()
2)equals():比較的是對象的引用是否指向同一塊內存Dog dog = new Dog()
一般情況下是比較兩個對象時是比較他的值是否一致,所以要進行重寫。
Eclipse->Source->Generate hashCode() and equals()
重寫后,比較兩個對象的值是否相同:
public?boolean?equals(Object?obj)?{if?(this?==?obj)return?true;if?(obj?==?null)return?false;if?(getClass()?!=?obj.getClass())return?false;Dog?other?=?(Dog)?obj;if?(age?!=?other.age)return?false;return?true;}轉載于:https://blog.51cto.com/ankneo/1567998
總結
以上是生活随笔為你收集整理的Java学习笔记3——继承的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络流之 最短增广路算法模板(SAP)
- 下一篇: JavaWeb应用开发环境-Tomcat