多型跟屬性無關,多型指的是方法的多型,而不是屬性的多型。
案例代入:
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...