实现.NET配套提供的接口,可使你部署的类具有其他开发者所期望的标准功能。上一篇文章介绍了类的接口,并将其与抽象基类比较。还描述了一些最重要的.NET接口,并创建了一个实现IComparable接口的类。
让我们更进一步,来创建一个自定义类。创建自己的类,可强迫自己遵循最佳操作法则,并标准化开发过程。本文首先回顾上一次创建的类,再研究创建自定义类所牵涉到的操作。可在这里下载本文的完整源程序。
快速回顾
Dinosaur类实现了IComparable接口(如类声明所示):
public class Dinosaur : IComparable
IComparable接口要求实现它的类包括一个CompareTo方法。做法很简单,只需向类传递一个基于类实例名称的字符串比较:
public int CompareTo (object obj) {
Dinosaur dino = (Dinosaur) obj;
return this.Name.CompareTo (dino.Name);
}
清单 A展示了Dinosaur类目前完整的样子。
另外还有大量派生的Dinosaur类,请参见清单B。
由于派生类都实现了IComparable(通过继承的Dinosaur类),所以能在一个数组中对它们排序(清单C),并可在一个ListBox中按顺序显示,如图A所示。
图A