前面的範例展示了標準方法的使用,但不是在實際場景中。
Series 介面被廣泛使用,許多程式都依賴它。
我們發現幾個 Series 實作新增了一個方法,該方法傳回一個包含該系列的下 n 個元素的陣列。
決定使用 getNextArray(int n) 方法改進 Series 接口,其中 n 指定要檢索的元素數量。
在標準方法之前,加入此方法會破壞未定義它的現有程式碼。
使用標準方法,可以將新方法新增至 Series 介面中,而不會導致現有程式碼出現問題。
在某些情況下,當無法提供適用於所有情況的實作時,新增至介面的標準方法在使用時會報告錯誤。
這些預設方法定義可選代碼。
在某些情況下,可以定義預設方法以在任何情況下工作。
getNextArray() 方法是一個範例,因為它可以使用 Series 介面已經需要的 getNext() 方法來實作。
可以使用標準的 getNextArray() 方法來實作新版本的 Series。
標準 getNextArray() 方法是使用 getNext() 方法實現的,該方法已存在於原始 Series 規範中。
任何實作 Series 的類別都可以使用 getNextArray(),而無需重寫該方法。
新增 getNextArray() 不會使現有程式碼失效。
如果需要,類別可以提供自己的 getNextArray() 實作。
標準方法的優點:
允許介面發展而不會使現有程式碼失效。
提供選用功能,無需佔位符實作。
對於 getNextArray(),如果 Series 實作不需要該方法,則不需要提供佔位符實現,從而使程式碼更清晰。
以上是標準方法的更實際範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!