-1
A
回答
5
隱藏實現的接口後=讓您的客戶端類依賴的接口,而不是執行上,即:
class A {
// make use of B somehow
void Foo(B b)
}
class B { }
成爲
interface IB { }
class A {
// hide the implementation behind an interface
void Foo(IB b) { }
}
class B : IB { }
隱藏實現的好處是,你可以改變在不同的實現之間,客戶端代碼不會改變。
+0
不是很清楚你想說什麼。 – Thomas 2012-02-17 06:24:16
相關問題
- 1. 接口實現隱藏方法
- 2. 在erlang中隱藏通用接口背後的不同實現
- 3. 將顯式接口實現重構隱式接口實現
- 4. WPF/Silverlight的數據綁定接口屬性(隱藏實現)
- 5. 覆蓋/隱藏明確實現的接口方法
- 6. 隱藏類實現
- 7. 不允許任意實現時使用接口隱藏實現細節
- 8. 接口的隱式和顯式實現
- 9. 隱藏接口的方法
- 10. 在接口中實現接口屬性?
- 11. 如何在android JAVA中使用反射來實現隱藏接口?
- 12. Android隱藏類的實現?
- 13. 如何從C#中的接口隱藏已實現屬性的set方法?
- 14. 在C++中實現接口
- 15. 在java中實現接口
- 16. 在C++中實現接口?
- 17. 在Erlang中實現接口
- 18. 實現接口在Java中
- 19. 接口實現:隱式與顯式
- 20. 如何從Callback接口的實現類中隱藏泛型類型參數
- 21. 芹菜動態任務/隱藏在接口後面的芹菜實現
- 22. 在Oracle中實施OOPS
- 23. Android隱藏Android Api接口
- 24. 隱藏Objective-C中的實現文件
- 25. Java中接口的實現
- 26. 實現接口
- 27. 實現接口
- 28. 實現接口
- 29. 實現接口
- 30. 接口實現
你可以請你優化你的問題。關於接口和麪向對象編程,你想了解什麼並不是很清楚。 – 2012-02-16 18:46:45
你的意思是隱藏DI等接口的實現嗎?這是[SOLID](http://en.wikipedia.org/wiki/SOLID_%28object-oriented_design%29)原理之一。您可以找到任何常用C#DI框架的示例,例如ninject。 – Rup 2012-02-16 18:48:28
我相信你不需要DI框架來展示如何隱藏實現並使客戶端類依賴於一個接口。 – 2012-02-16 18:55:26