首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

c#.net中Delegate-Event的超级简单示例?

在C# .NET中,Delegate和Event是用于实现事件驱动编程的两个重要概念。Delegate是一种引用类型,它允许将方法作为参数传递给其他方法。Event是一种特殊的委托,它用于声明一个事件,并允许其他类通过订阅该事件来监听和响应事件。

以下是一个简单的示例,展示了如何在C# .NET中使用Delegate和Event:

代码语言:csharp
复制
using System;

namespace DelegateExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个Calculator对象
            Calculator calculator = new Calculator();

            // 订阅Add事件,并指定AddHandler方法作为事件处理程序
            calculator.Add += AddHandler;

            // 调用Calculator对象的Add方法,触发Add事件
            calculator.Add(10, 20);
        }

        // 定义AddHandler方法,作为事件处理程序
        static void AddHandler(int a, int b)
        {
            Console.WriteLine($"AddHandler: {a} + {b} = {a + b}");
        }
    }

    // 定义Calculator类,包含Add方法和Add事件
    class Calculator
    {
        // 定义Add事件,使用Action<int, int>作为委托类型
        public event Action<int, int> Add;

        // 定义Add方法,用于触发Add事件
        public void Add(int a, int b)
        {
            // 如果有订阅者,则触发Add事件
            Add?.Invoke(a, b);
        }
    }
}

在上面的示例中,我们定义了一个Calculator类,其中包含一个Add方法和一个Add事件。当调用Calculator对象的Add方法时,会触发Add事件,并调用所有订阅者的事件处理程序。在Main方法中,我们创建了一个Calculator对象,并订阅了其Add事件,并指定了AddHandler方法作为事件处理程序。当Add方法被调用时,AddHandler方法会被执行,输出两个整数的和。

这个示例展示了如何在C# .NET中使用Delegate和Event进行事件驱动编程。Delegate和Event是C# .NET中非常重要的概念,它们可以帮助开发人员更好地组织和管理代码,提高代码的可读性和可维护性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券