C# 请问委托和类的区别是什么 有代码更好 谢谢

 我来答
SWEETSWISS
2017-04-22 · TA获得超过562个赞
知道小有建树答主
回答量:701
采纳率:0%
帮助的人:194万
展开全部

1.什么是委托

(1) 从数据结构来讲,委托是和类一样是一种用户自定义类型。

(2) 从设计模式来讲,委托(类)提供了方法(对象)的抽象。

简单地说:委托是方法的抽象,它存储的就是一系列具有相同签名和返回回类型的方法的地址。调用委托的时候,委托包含的所有方法将被执行。

2.如何定义委托类型

delegate void MyDel(int x);

委托类型声明:

(1) 以deleagate关键字开头。

(2)返回类型+委托类型名+参数列表。

3. 声明委托变量

MyDel del1,del2;

4. 初始化委托变量

del1 = new MyDel( myInstObj.MyM1 );
del2 = new MyDel( SClass.OtherM2 );

del1 = myInstObj.MyM1;
del2 = SClass.OtherM2;

5.委托调用

委托调用跟方法调用类似。委托调用后,调用列表的每个方法将会被执行。

在调用委托前,应判断委托是否为空。调用空委托会抛出异常。

if(null != del)

del();//委托调用
}

6.C#使用class关键字来定义类

class MyClass
{
// Class members.
}

这段代码定义了一个类MyClass。定义了一个类后,就可以在项目中能访问该定义的其他地方对该类进行实例化。在默认情况下,类声明为内部的,即只有当前项目中的代码才能访问它。

7.类访问修饰符

追问
那么应该说类是一种特殊的委托吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式