#region Using directives
using System;
using System.Collections.Generic;
using System.Text;
#endregion
using System.Collections;
namespace CarDelegate
{
public class Car
{
#region Basic Car state data / constructors
// Internal state data.
public int CurrentSpeed { get; set; }
public int MaxSpeed { get; set; }
public string PetName { get; set; }
// Is the car alive or dead?
private bool carIsDead;
public Car()
{
MaxSpeed = 100;
}
public Car(string name, int maxSp, int currSp)
{
CurrentSpeed = currSp;
MaxSpeed = maxSp;
PetName = name;
}
#endregion
#region Delegate infrastructure
// 1) Define the delegate type.
public delegate void CarEngineHandler(string msgForCaller);
// 2) Define a member variable of the delegate.
private
C#简单代理例子
最新推荐文章于 2021-01-20 13:31:56 发布
本文通过一个简单的Car类示例介绍了C#中如何使用委托来实现事件处理。Car类定义了一个CarEngineHandler委托类型,用于传递消息。Car类的方法Accelerate通过委托触发事件,通知监听者当前汽车的状态变化。Main方法创建了Car对象并注册了两个事件处理方法OnCarEngineEvent和OnCarEngineEvent2,当汽车加速时,这些方法会被调用显示相关信息。此外,还展示了如何注销事件处理方法。
摘要由CSDN通过智能技术生成