我仍然在學習面向對象程序設計,在我的應用程序中找不到真實的界面使用方法。相反,我使用了很多抽象類。php界面僅適用於團隊項目
我的理解是,接口更像是你和你的代碼之間的契約。對接口進行編碼有助於爲你的類設置標準,但抽象類也是如此。
接口規定如果您構建用戶對象,它將始終有x,y和z。 抽象類是相同的,但它們給你一個額外的好處:它們允許你在定義之上添加具體的實現。
所以唯一真正的用法是在任何實現之前編寫接口,以便其他團隊成員在依賴我們的部分的另一部分lib上並行工作。或者這是對它的錯誤理解?
如果抽象類給你兩個世界的敲打,爲什麼要解決接口+抽象?
說明:我知道我錯了,接口後面必須有一個高度技術性的概念。這就是我要問的原因。
由於
接口的一件事可以讓你,不管你是一個人還是多個人,都可以更清楚地將API定義(進入接口)與內部實現(進入一個類)分開。實現是處於抽象類還是具體類中取決於所討論的類的實現細節。這也意味着如果您的技術設計需要這樣的事情,您可以擁有多個相同API的實現。 – ajp15243
''所以只有真正的用法是,如果你在任何實現之前編寫接口,以便其他團隊成員在依賴於我們的部分的lib的另一部分上並行工作。「 - 不,這不是」唯一真正的用途。 「定義接口可以幫助您區分問題並維護封裝和多態等事物,通常會導致更易維護且更易測試的面向對象代碼。 – David
你已經提出了136個問題,而你還*寫了糟糕的英語。請不要再寫「你」或「你」。這是*從不*合適或正確的,特別是在堆棧溢出。 – meagar