接口
1、接口的声明
1)语法:[修饰符] interface 接口名称[:父接口名称]{代码};
2)要点:
a、声明接口成员的时候,不可以为接口成员指明任何访问修饰符;
b、不可以为成员实例化任何代码
2、接口的使用
1)使用一个接口只有通过类的继承来实现
2)子类不仅可以从父类继承,还可以从接口继承
3)当一个类从接口继承之后,必须在子类中实例化父接口中的所有成员
3、接口与抽象类的比较
1)在接口中,不能声明域或者私有变量
2)声明接口成员时,不能使用任何访问修饰符
3)接口一旦被继承,则在子类中必须实例化所有成员,而抽象类则可以根据需要重载部分成员
4)接口允许多重继承
5)接口相对抽象类具有更高的抽象层次
4、System命名空间的常用接口
1)ICloneable:Clone方法
2)IComparable:CompareTo方法
3)IConvertable:
4)IFormatable:Format方法
代理
1、代理的声明
[修饰符]delegate 返回类型 代理名称(参数列表);
2、代理的使用
使用new运算符创建一个代理对象,同时为代理对象指明引用的方法名称
3、System.Delegate类
Method和Target属性
4、事件
修饰符 event 类型 标识符
修饰符 event 类型 标识符{get{};set{};}
声明和使用一个事件需要如下步骤:
1)创建一个代理或者使用系统代理:EventHandler
2)在类的内部利用event关键字声明事件,并在类中定义调用事件的方法
3)声明多个方法与事件关联