簡體   English   中英

實現接口的具體類是否需要完全遵循接口定義? (沒有額外的屬性和方法)

[英]Do the concrete classes that implement an interface need to follow the interface definition exactly? (with no extra properties and methods)

一個具體的類遵循接口定義是否可以接受,但也略有不同(例如通過添加額外的屬性或方法)?

是。 非常非常。 一個接口說它至少實現了給定的一組行為,但是沒有什么可以阻止它做更多的事情。 當然,您應該始終牢記類不應做太多事情。

一個很好的例子是IComparable接口( http://msdn.microsoft.com/zh-cn/library/system.icomparable(v=vs.110).aspx )。 它具有一個方法: CompareTo 顯然,僅啟用此功能的對象將毫無意義。 相反,此界面會執行其在錫盒上說的內容,並標記您可以比較該類型的對象。

是的,如果完全不變,則將與原始版本相同。

該接口定義了該類的預期部分,以便可以進行常見操作。 只要滿足了這些條件,您就可以做任何您想做的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM