描述:业主通过代理人来实现卖房,使用委托的方式来实现卖房。
总结:委托就是有一个方法,自己不调用,将自己委托给一个变量,由这个变量来执行这个方法,执行结果与自己执行是一样。
代码如下:
//创建委托人的类和卖房的方法
class Entrust
{
public void SaleHouse(string name)
{
Console.WriteLine("{0}的房子,要高价卖出去!",name);
}
}
//委托人声明委托
public delegate void EntrustHandler(string name);
//创建代理人的类和声明委托变量,以及执行卖房行为
class Agency
{
//声明委托变量
EntrustHandler handler;
public EntrustHandler Handler
{
set { handler = value; }
}
//代理人执行卖房
public void Implementation(string name)
{
if (handler!=null)
{
handler(name);
}
}
}
//控制台主程序
static void Main(string[] args)
{
//卖房案例
Entrust entrust=new Entrust();//创建委托人对象
Agency agency = new Agency();//创建代理人对象
agency.Handler=entrust.SaleHouse;//授权
agency.Implementation("委托人");//调用代理人执行方法
Console.ReadKey();
}