php多态
多態性是指相同的操作或函數、過程可作用于多種類型的對象上并獲得不同的結果。不同的對象,收到同一消息將可以產生不同的結果,這種現象稱為多態性。
多態性允許每個對象以適合自身的方式去響應共同的消息。多態性增強了軟件的靈活性和重用性。
在面向對象的軟件開發中,多態性是最為重要的部分之一。面向對象編程并不只是將相關的方法與數據簡單的結合起來,而是采用面向對象編程中的各種要素將現實生活中的各種情況清晰的描述出來。這一小節將對面向對象編程中的多態性作詳細的講解。
什么是多態
?多 態(Polymorphism)按字面上意思理解就是“多種形狀”。可以理解為多種表現形式,也即“一個對外接口,多個內部實現方法”。在面向對象的理論 中,多態性的一般定義為:同一個操作作用于不同的類的實例,將產生不同的執行結果。也即不同類的對象收到相同的消息時,將得到不同的結果。
在實際的應用開發中,采用面向對象中的多態主要在于可以將不同的子類對象都當作一個父類來處理,并且可以屏蔽不同子類對象之間所存在的差異,寫出通用的代碼,做出通用的編程,以適應需求的不斷變化。
下面通過一個例子說明:
interface Iemployee
{
?public function working();//定義一個接口的父類
}
class painter implements Iemployee
{
?public function working()
?{
??echo '油漆工正在刷漆!
';
?}
}
class typist implements Iemployee
{
?public function working()
?{
??echo '打字員正在打字!
';
?}
}
class manager implements Iemployee
{
?public function working()
?{
??echo '經理正在開會!
';
?}
}
function printworking($obj)
{
?if($obj instanceof Iemployee)
?{
??return $obj->working();
?}else
?{
??echo "Error: 對象錯誤!";
?}
}printworking(new painter());
printworking(new typist());
printworking(new manager());
轉載于:https://www.cnblogs.com/yulei126/p/6786166.html
總結
- 上一篇: Jfreechart柱形图设置数值显示
- 下一篇: 2017.4.20实验三:4、定义一个带