代码
using System;
class A{
}
class CarInfoEventArgs: EventArgs{
public CarInfoEventArgs(string car){
this.Car = car;
}
public string Car{get;private set;}
}
class CarDealer{
public event EventHandler<CarInfoEventArgs> NewCarInfo;
public void NewCar(String car){
Console.WriteLine("CarDealer {0}",car);
if(NewCarInfo!=null){
NewCarInfo(this,new CarInfoEventArgs(car));
}
}
}
class Consumer{
private string name;
public Consumer(string name){
this.name = name;
}
public void NewCarIsHere(Object sender,CarInfoEventArgs e){
Console.WriteLine("{0}:car{1} is new",name,e.Car);
}
}
class HelloWorld
{
static void Main(string[] args)
{
/* tet*/
Console.WriteLine("Hello World");
var dealer = new CarDealer();
var michael = new Consumer("zhuang shan");
dealer.NewCarInfo += michael.NewCarIsHere;
dealer.NewCar("x40");
var nick = new Consumer("li shi");
dealer.NewCarInfo += nick.NewCarIsHere;
dealer.NewCar("x80");
dealer.NewCarInfo -= michael.NewCarIsHere;
dealer.NewCar("B 90");
Console.ReadKey();
}
}
运行效果
代码分析