介面是為了解決多繼承問題
修飾符 inte***ce 介面名 extends 父介面名列表
注意:修飾符可預設,父介面名列表可省略,但是一旦寫了extends就不能省略
與類相同介面檔名與介面相同
介面可以繼承
介面名稱前面有大寫l
實現介面 :修飾符 class 類名 extends 父類名 implemens介面列表
介面列表 : 寫出要實現的介面 有多個時候,用「,」隔開 再不寫implements時候可省略
類的繼承 修飾符 class 子類名 extends 父類名
修飾符 有public abstract final 可選引數
子類可以使用父類中的變數和方法
final 是不可被改變的量
public可以被繼承 private 不可以被繼承
類的重寫,在子類中方法和父類中的名字一樣是,就是重寫了該方法,用重寫的這個
super 的使用
子類中有與和父類中同名的變數和方法時候,如果要呼叫父類,需要使用super
eg:super.成員變數名 super.成員方法(引數列表)
重寫 可以在com.mingrisoft包中用子類重寫父類
重寫和過載 是多型的基本形態 多型的兩種方式是抽象類和介面
過載是寫相同的方法名稱,但是引數數量和型別卻不同
過載時返回型別不能作為區分標誌
abstract 抽象類是沒有具體方法,沒有實現**,但是每乙個抽象類中必須有乙個抽象方法,否則會發生編譯.抽象的類和抽象的方法是綁在一起的。當然可以有非抽象的方法
介面中的方法全是抽象的,必須在例項中完成方法的覆蓋。介面前面的public和abstract沒有什麼意義
open close原則 新增**而不要修改**
子類可以給父類無條件賦值,是安全的;父類給子類賦值是危險的
多型1存在著乙個繼承關係
2一定有乙個子類向父類賦值的過程
3子類會重寫父類
4理解為 乙個抽象的指令讓一組具有相同行為但是內容不同的個體協同工作
java介面 繼承 多型
在建構函式中,如果第一行沒有寫super 編譯器會自動插入 需要注意的是子類不是一定要初始化父類,但當父類沒有無引數的建構函式時或者無引數建構函式為private時,需要手動呼叫有引數的建構函式 在obect類中主要包括equals tostring clone finalize方法 常用的方法 g...
Java核心 介面 繼承和多型 多型
利用多型可以使程式具有良好的擴充套件性,並可以對所有類物件進行通用的處理。eg 定義乙個平行四邊形的類 parallelogram 在類中頂乙個 draw 方法。public class parallelogram 如果需要頂乙個繪製正方形的方法,通過定義乙個正方形類來處理正方形物件,會出現 冗餘的...
繼承 多型 介面
多型 編譯階段 編譯期間編譯器可以根據選擇引數的型別來選擇使用哪個方法,是因為方法已經通過方法的過載 在同乙個類 裡提前寫好。程式在編譯時,會在編譯型別中檢查是否具有所呼叫的方法。如果編寫 時,使用引用變數呼叫子類中的特有方法,或者呼叫過載了父類中的方法,而父類中找不到該方法,則會報編譯錯誤 執行階...