Java初學之繼承與多態(tài)
首先我們?nèi)绻褂肑ava中存在的包,可以程序中使用import語句導入包。包說通俗點就是一個
文件夾,為了方便管理。
在程序中聲明包的語法:
package <包名>
注意:聲明一個包的語句必須寫在類中的第一行。
在程序中導入包的格式:
import <包名>.<類名>
重點來了,繼承!
繼承是面向?qū)ο蟪绦蛟O計的一個重要特征,它是通過繼承原有類派生出的子類進而構(gòu)造出更為復雜的子類。子類既有新定義的行為特征,又繼承了原有類的行為特征。我們可以這樣進一步認為:父類更為通用,子類更為具體。通過繼承可以大幅度提高代碼復用性,減少代碼量,便于程序的后期維護。Java的繼承使用extends關鍵字實現(xiàn)。
Java繼承語法格式:
【修飾符】class 子類名 【extends 父類名】{
//類定義部分
}
!注意:Java中的繼承為單繼承,即一個子類只能有一個直接的父類。
子類會自動繼承父類的屬性,子類中也可以定義特定的屬性和方法。
下面是重載:
方法的重載,是指在同一個類中的多個方法可以具有相同的方法名,但是這些的方法參數(shù)必須不同。
當方法功能相同時,只是接受參數(shù)不同的時候,就要用到重載。
使用方法重載需要注意以下幾點:
- 1.同一個類中方法名相同,參數(shù)列表不同。
- 2.返回值類型不能用于區(qū)分方法的重載。
提醒:構(gòu)造方法也可以實現(xiàn)方法的重載。
什么是重寫呢?:
子類擴展了父類,子類是一個特殊的父類。子類以父類為基礎,額外增加新的屬性和方法。
方法的重寫要遵循方法名和參數(shù)列表都必須相同。子類方法的訪問權(quán)限應該要比父類方法的訪問權(quán)限更大或者相等。
多態(tài)應用:
多態(tài)是指同一操作作用于不同對象,可以有不同的解釋,以致產(chǎn)生不同的執(zhí)行結(jié)果。在編譯時,可以通過父類的引用指向子類對象,而在運行時,則通過父類指向子類對象,調(diào)用子類中重寫父類的方法。
多態(tài)的具體操作見示例:
程序運行結(jié)果如圖:
引用變量的強制類型轉(zhuǎn)換
這里的強制轉(zhuǎn)換轉(zhuǎn)換的是對象,要有關系才能轉(zhuǎn),兩個平行的類不能轉(zhuǎn),如:子類和父類,兩個類
都有繼承關系,但是可以和父類的父類轉(zhuǎn)。
instanceof 運算符
instanceof運算符的前一個操作數(shù)通常是一個引用類型變量。后一個操作數(shù)通常是一個類。他它用于判斷運算符前面的引用變量是否是運算符后面的類型或其子類型的實例。
總結(jié)
本篇文章就到這里了,希望可以對你有所幫助,也希望您可以多多關注腳本之家的更多內(nèi)容!
相關文章
java數(shù)據(jù)庫開發(fā)之JDBC基礎使用方法及實例詳解
這篇文章主要介紹了java數(shù)據(jù)庫開發(fā)之JDBC基礎知識詳解,需要的朋友可以參考下2020-02-02springboot之security?FilterSecurityInterceptor的使用要點記錄
這篇文章主要介紹了springboot之security?FilterSecurityInterceptor的使用要點記錄,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-12-12Java中漢字轉(zhuǎn)拼音pinyin4j用法實例分析
這篇文章主要介紹了Java中漢字轉(zhuǎn)拼音pinyin4j用法,結(jié)合實例形式較為詳細的分析了pinyin4j庫的具體使用技巧,需要的朋友可以參考下2015-12-12解決Lombok使用@Builder無法build父類屬性的問題
這篇文章主要介紹了解決Lombok使用@Builder無法build父類屬性的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09springboot加載一個properties文件轉(zhuǎn)換為map方式
這篇文章主要介紹了springboot加載一個properties文件轉(zhuǎn)換為map方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07