|
1. 引言
在我之前的一篇post 《抽象類和接口的誰是誰非 》中,和同事管偉的討論,得到很多朋友的關注,因為是不成體系的論道,所以給大家了解造成不便,同時關于這個主題的系統性理論,我認為也有必要做以總結,因此才有了本篇的新鮮出爐。同時,我將把上貼中的問題順便也在此做以交代。
2. 概念引入
- 什么是接口?
接口是包含一組虛方法的抽象類型,其中每一種方法都有其名稱、參數和返回值。接口方法不能包含任何實現,CLR 允許接口可以包含事件、屬性、索引器、靜態方法、靜態字段、靜態構造函數以及常數。但是注意:C# 中不能包含任何靜態成員。一個類可以實現多個接口,當一個類繼承某個接口時,它不僅要實現該接口定義的所有方法,還要實現該接口從其他接口中繼承的所有方法。
定義方法為:
1. public interface System.IComparable
2. {
3. int CompareTo(object o);
4. }
5.
6. public class TestCls: IComparable
7. {
8. public TestCls()
9. {
10. }
11.
12. private int _value;
13. public int Value
14. {
15. get { return _value; }
16. set { _value = value; }
17. }
18.
19. public int CompareTo(object o)
20. {
21.
22. //使用as模式進行轉型判斷
23. TestCls aCls = o as TestCls;
24. if (aCls != null)
25. {
26.
27. //實現抽象方法
28. return _value.CompareTo(aCls._value);
29. }
30. }
31. }
NET技術:對抽象編程:接口和抽象類,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。