多型
介面的方法實現可以有很多。多以對於介面裡面定義的方法的具體實現是多種多樣的,這種特性我們稱為多型
介面a兩個實現b和c,b和c對a裡面定義的方式實現可以是不同的,這種現象就是多型
相同的一行**對於傳入不同的介面的實現的物件的時候,表現是不同的。這就是多型
抽象類abstract 關鍵字用於定義抽象類
抽象類裡面
1.可以定義方法體
2.可以定義普通方法,有方法的具體實現
繼承抽象類的子類需要實現抽象類中定義的抽象方法
魔術方法
__tostring()
當物件被當做string使用的時候,這個方法被自動呼叫
__invoke()
當對想被當做方法呼叫的時候,這個方法被自動呼叫
__call()
當物件訪問不存在的方法名稱的時候,這個方法被自動呼叫
__callstatic()
當物件訪問不存在的靜態方法時,被自動呼叫
__set()
在給不可訪問屬性賦值的時候 這個方法被呼叫
__get()
讀取不可訪問屬性的值,方法被呼叫
__isset()
當對不可訪問屬性呼叫isset() 或empty() 會被呼叫
__unset()
當對不可訪問屬性呼叫unset()時
__clone()
轉殖
多型 抽象方法 抽象類
類的多型主要指方法重寫 abstract關鍵字修飾的類 方法 就是抽象類 方法 方法重寫的要求 子類中重寫的方法要與父類中的方法同名 子類中重寫的方法形參個數要與父類中同名方法的形參個數一致 子類中重寫的方法型別要與父類中同名方法的型別一致 靜態 成員方法 子類中重寫的方法的訪問許可權不能低於父類中...
多型,抽象方法,抽象類,介面
向上轉型 使用父類型別的變數接收子類型別的物件 多型使用的方法和屬性都是子類和父類共有的內容,物件能夠呼叫的屬性和方法全部 於子類中的內容。子類獨有的方法和屬性是不能使用的 向下轉型 如果向上轉型後,需要呼叫子類獨有的方法和屬性時,就需要向下轉型,必須是先有向上轉型,才會有向下轉型。一般用insta...
多型 抽象類
多型 當中體現多型性,就是父類指向子類 左父右子 格式 父類名稱 物件名 new 子類名稱 介面名稱 物件名 new 實現類名稱 使用多型,物件向上轉型,是絕對安全的,但物件一旦向上轉型父類,就不能呼叫子類原本特有的類容 物件向下轉型,就是還原的動作 格式 子類名稱 物件名 子類名稱 父類物件 含義...