1.抽象類是乙個特殊的方法,介面是特殊的抽象類,多型就是使用抽象類和介面
2.是物件導向設計的重要特性,它展現了動態繫結的功能,也稱為」同名異式「。多型的功能可以讓軟體在開發和維護時,達到充分的延伸性。事實上,多型最直接的定義就是讓具有繼承關係的不同類物件,可以以相同名稱的成員函式呼叫,產生不同的反應效果
1.如果這個類有乙個抽象方法,這個類就是抽象類,必須用abstract修飾.
2.使用抽象類就必須子類去繼承抽象類,子類必須實現抽象類的方法
目的:定義一些規範,讓子類按照抽象類的規則去實現自己的功能
abstract class person3
class person4
} $person4 = new person4();
$person4->test();
如果想定義一些規範又想繼承其他類就需要使用介面。
介面和抽象方法的對比
1.都不能建立物件,都需要子類去繼承
2.宣告的方式不一樣
3.介面被實現的方式不一樣
4.介面中的所有方法都是抽象方法,不需要用abstract修飾
5.介面中的成員屬性只能宣告常量,不能宣告變數
6.介面的訪問許可權都是public,抽象類的最低許可權是protceted
7.可以使用抽象類去實現接
8.介面可以繼承介面
9.實現多個介面用 逗號隔開
inte***ce demointe***ce
class inte***cetest implements demointe***ce
}
物件導向三大特性之一 多型
多型 普通版本 對於同乙個方法,由於呼叫的物件不同 或者傳入的物件不同 最終實現了不同的結果 定義電腦類 class computer 在電腦類中定義乙個 sub 的規範的介面 方法 def usb self,obj obj.start 定義滑鼠類 class mouse def start sel...
物件導向三大特性之一 多型(C )
目錄 多型的定義及實現 抽象類多型的原理 單繼承和多繼承關係的虛函式表 1 什麼是多型?當不同的物件去完成某個行為時,會產生出不同的結果。多型是 不同繼承關係的類物件去呼叫同一函式時,產生了不同的行為。例如 student類繼承了person類。person物件買票全價,student物件買票半價。...
python物件導向的三大特性之一多型
多型的特性是呼叫不同的子類將會產生不同的行為,而無需明確知道這個子類實際上是什麼 說白了就是,不同的物件呼叫相同的方法,產生不同的行為 例如 s1是字串型別,w1是列表,兩個完全不同的物件,他們都可以呼叫len方法,而得出的結果不同 多型實際上是依附於繼承的兩種含義 改變 和 擴充套件 本身就意味著...