C# 接口(高手进)

来源:百度知道 编辑:UC知道 时间:2024/06/25 05:47:56
namespace XX
{
public interface ILogable
{
event LogHandler OnLog;
}
}

给我讲一下这个接口的作用,特别是:event LogHandler OnLog;这一句是什么意思?

1.接口最基本的作用就是作为一个客观的规范 是一类事物所具有的属性的总结 相当于父类
举例说明下 人 有身高这个属性 有吃饭这个方法 有痛了就喊"妈呀"这个事件
OK 这样就可以把这些属性,方法,事件总结起来定义一个接口 叫"人类"
(这里的LogHandler OnLog就是一个事件 下面会具体讲到)

2.接口还有一个最基本的作用(也是父类所没有的)——多态
估名思义 人具有多种"态" 比如某个人却实具有了人类的所有属性 但是很特别 这个人还具备一般人不具有但却是动物独有的一种行为——"吃人"(这里且不把人看做动物) 那么这个人也实现了另一个接口 叫"动物类"
具体实在代码:
public class riBenRen : IPeople, IAnimal
{
private float height = 5.0;
public event BeiKan onBeiKan;
public string Eat(string food){
//消化过程
return "屎";
}
public string EatPeople(IPeople people){
//消化过程
return "屎";
}
}

3.以上两种作用只是形式上的 它还有另一个作用就是"子类的实例调用父类的引用" (貌似是这么说的)
举例说明
我不知道某人叫什么 我只知道他属于人类 那么我一定知道他有吃饭的行为 我就可以扔给他一个骨头
具体代码
IPeople chenLaoShi = new ChenGuanXi();
chenLaoShi .Eat("骨头");

4.至于那个事件
LogHandler是一个委托 为什么叫委托 就是把某件事委托给系统 当