多型詳細講解

2021-10-10 18:17:50 字數 1620 閱讀 3948

多型跟屬性無關,多型指的是方法的多型,而不是屬性的多型。

案例代入:

public

class

animal

}

public

class

catextends

animal

public

void

scratch()

}

public

class

dogextends

animal

public

void

guard()

}

public

class

pigextends

animal

public

void

eat(

)}

public

class

girl

*///跟狗玩耍:

/*public void play(dog dog)*/

//跟小動物玩耍:

public

void

play

(animal an)

}

public

class

test

}

總結:

(1)先有父類,再有子類:–》繼承 先有子類,再抽取父類 ----》泛化

(2)什麼是多型:

多型就是多種狀態:同乙個行為,不同的子類表現出來不同的形態。

多型指的就是同乙個方法呼叫,然後由於物件不同會產生不同的行為。

(3)多型的好處:

為了提高**的擴充套件性,符合物件導向的設計原則:開閉原則。

開閉原則:指的就是擴充套件是 開放的,修改是關閉的。

注意:多型可以提高擴充套件性,但是擴充套件性沒有達到最好,以後我們會學習 反射

(4)多型的要素:

一,繼承: cat extends animal ,pig extends animal, dog extends animal

二,重寫:子類對父類的方法shout()重寫

三, 父類引用指向子類物件:

pig p =

newpig()

;animal an = p;

將上面的**合為一句話:

animal an =

newpig()

;

=左側:編譯期的型別

=右側:執行期的型別

animal an =

newpig()

;g.play

(an);//

public

void

play

(animal an)

上面的**,也是多型的一種非常常見的應用場合:父類當方法的形參,然後傳入的是具體的子類的物件,

然後呼叫同乙個方法,根據傳入的子類的不同展現出來的效果也不同,構成了多型。

UITableView 詳細講解

建立 uitableview datatable uitableview alloc initwithframe cgrectmake 0,0,320,420 datatable setdelegate self datatable setdatasource self self.view adds...

UITableView 詳細講解

建立 uitableview datatable uitableview alloc initwithframe cgrectmake 0,0,320,420 datatable setdelegate self datatable setdatasource self self.view adds...

const 詳細講解

const使用詳解 2005 11 15 16 47 02 關於c 中的const關鍵字的用法非常靈活,而使用const將大大改善程式的健壯性,現將本人的一些體會總結如下,期望對大家有所幫助 一 const基礎 如果const關鍵字不涉及到指標,我們很好理解,下面是涉及到指標的情況 int b 50...