繼承和多型

2021-08-26 02:36:52 字數 1393 閱讀 9629

無參構造方法是用來初始化資料

方法的過載:方法名相同,引數不同(數量、型別、順序)

靜態變數可以類名直接訪問

例項方法裡不能定義static

靜態方法只能呼叫靜態變數和靜態方法,不能呼叫屬性

靜態塊 類成員 先呼叫 在刪除物件之前呼叫

static

extends繼承

繼承父類所有的屬性和方法(private除外)

子類的構造方法會呼叫父類的構造方法,如果沒有明顯呼叫,則呼叫預設空構造方法

。class 類{

private 屬性

public get/set

空構造帶參構造

方法super(   )   呼叫父類構造方法  要寫第一句 只能寫一次

方法重新

子類重新寫父類的方法

過載:在同乙個類中,方法名相同,引數不同

重寫:在子類中,方法名相同,返回值相同,引數相同,訪問修飾符要求大於等於父類

抽象方法 abstract 沒有方法體

抽象方法必須在抽象類中

抽象方法必須在子類中被實現,除非子類是抽象類

final  類不希望被繼承  方法不希望被重寫   屬性值不想被修改

//重新

equals():

告訴計算機乙個新的比較規則:如果學號和名字都相同,我們認為就是同乙個物件 //

把你傳過來的

obj物件和

this(

當前學員物件)比較

//instanceof

操作符的作用:判斷某乙個物件是否屬於某一種型別 //

繫結機制:靜態繫結

動態繫結 //

例項方法

(動態繫結機制

)  與引用變數實際引用的物件繫結,呼叫重寫後的方法,由執行時的

jvm決定 //

靜態方法

(靜態繫結機制

)  與引用變數所宣告的型別繫結。實際上在編譯階段就做了繫結 //

成員變數

(包括靜態變數和例項變數

,靜態繫結機制

)  與引用變數所宣告的型別繫結。實際上在編譯階段就做了繫結

//     father f = new son();

//     system.out.println(f.v1);

//     system.out.println(f.staticv2);

//     f.m1();

//     f.staticm2(); 多型

父類的引用指向了子類的物件,可以呼叫子類重寫父類的方法,和父類的屬性、方法

簡單工廠:設計模式中的一種

設計模式:工廠類---》生成產品(物件)

父類:pet

子類1:dog

子類2:cat

子類3:penguin

繼承和多型

物件導向程式設計時有乙個非常重要的原則 write once only once 編寫一次,且僅編寫一次 如果沒有繼承這種機制我們可能要重複寫很多 下面來看一下繼承 一 繼承 1 子類如果繼承父類必須使用extends這個關鍵字 2 子類呼叫父類的構造方法使用super關鍵字,也可以通過super來...

繼承和多型

物件導向程式設計時有乙個非常重要的原則 write once only once 編寫一次,且僅編寫一次 如果沒有繼承這種機制我們可能要重複寫很多 下面來看一下繼承 一 繼承 1 子類如果繼承父類必須使用extends這個關鍵字 2 子類呼叫父類的構造方法使用super關鍵字,也可以通過super來...

繼承和多型

類還有乙個重要的特性就是繼承,什麼是繼承?它又有什麼作用呢?繼承最主要的目的就是為了擴充套件原類的功能,加強或改進原類所沒有定義的屬性及方法。例如我們有狗這個類,可是狗的種類還是有很多,比如說博美狗,聖伯納,柴犬等等,如果只用狗一種類來定義所有種類狗的屬性及方法,那麼用這個類所產生出來的物件一定會有...