面向对象程序设计C委托ppt课件.ppt

上传人:sccc 文档编号:5458592 上传时间:2023-07-09 格式:PPT 页数:9 大小:299.04KB
返回 下载 相关 举报
面向对象程序设计C委托ppt课件.ppt_第1页
第1页 / 共9页
面向对象程序设计C委托ppt课件.ppt_第2页
第2页 / 共9页
面向对象程序设计C委托ppt课件.ppt_第3页
第3页 / 共9页
面向对象程序设计C委托ppt课件.ppt_第4页
第4页 / 共9页
面向对象程序设计C委托ppt课件.ppt_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《面向对象程序设计C委托ppt课件.ppt》由会员分享,可在线阅读,更多相关《面向对象程序设计C委托ppt课件.ppt(9页珍藏版)》请在三一办公上搜索。

1、2023/7/9,常熟理工计算机科学与工程学院,1,面向对象程序设计,基于.NET平台,委托,2023/7/9,常熟理工计算机学院 杨剑勇,2,委托定义,委托也叫代理,就是把事情交付给别人去办,如委托律师代理打官司,委托同学代买火车票等。C#中如果将一个方法委托给一个对象,那么这个对象就可以全权代理这个方法的执行。使用委托首先要定义委托,声明委托能代理什么类型的方法,就像房产中介能代理抵押贷款业务而不能代理打官司一样定义委托的语法如下:delegate 返回类型 委托名();,2023/7/9,常熟理工计算机学院 杨剑勇,3,委托的用法,定义了委托之后,要使用委托首先要实例化委托。实例化委托就

2、是将其指向某个方法,即调用委托的构造函数,并将相关联的方法作为参数传递。然后通过调用委托,执行相关方法的代码,实现委托。,2023/7/9,常熟理工计算机学院 杨剑勇,4,委托案例说明(数组排序),dotNET_C#_OO_Delegate_ArraySort1、定义一个类SortArray 其中有数组排序的方法SortArrayMethod2、Program中定义一个委托SortDelegate(int x)3、声明委托SortDelegate myDelegate;后实例化委托:myDelegate=new SortDelegate(SortArray.SortArrayMethod);4

3、、调用委托:myDelegate(arr),2023/7/9,常熟理工计算机学院 杨剑勇,5,委托案例说明(委托的增加减少),dotNET_C#_OO_Delegate_MultiDelegate1、定义一个类NumberOperation,其中有数操作的方法Square、SquareRoot2、Program中定义一个委托 delegate void MyDelegate(double dValue);3、声明实例化委托:MyDelegate dlg=new MyDelegate(myNO.Square);4、增减委托:(+=/-=增减方法,若同方法添加两次,则执行两次)dlg+=new M

4、yDelegate(myNO.SquareRoot);/向委托添加方法dlg-=new MyDelegate(myNO.SquareRoot);/从委托移除方法,2023/7/9,常熟理工计算机学院 杨剑勇,6,委托案例说明(多方法委托),dotNET_C#_OO_Delegate_MultiMethodsprivate static List FilterArray(int intArray,NumberPredicate predicate)private static bool IsEven(int number)private static bool IsOdd(int number)

5、private static bool IsOver5(int number),2023/7/9,常熟理工计算机学院 杨剑勇,7,委托案例说明(委托的协变和逆变),dotNET_C#_OO_Delegate_Coconvariant声明返回类型为Person类实例的委托delegate Person CreatePersonHandle(string FirstName,string LastName,int Age);声明参数为Employee类实例的委托delegate void ShowEmployeeHandle(Employee emp);委托的协变:委托的返回类型比方法返回类型的抽

6、象级别高,进行隐式转换表现形式是方法返回的类型,是委托声明中返回类型的派生类。CreatePersonHandle eh=CreateEmployee;Employee employee=(Employee)eh(Pony,Smith,41);委托的逆变:委托的参数类型比方法参数类型的抽象级别低,进行隐式转换表现形式是方法的参数类型,是委托声明中参数的基类。ShowEmployeeHandle ph=ShowPerson;ph(employee);,2023/7/9,常熟理工计算机学院 杨剑勇,8,事件,事件是C#中一个高级概念,是操作发生时允许执行特定于应用程序的代码的机制。事件要么在相关联的操作发生前发生(事前事件),要么在操作发生后发生(事后事件)。例如,当用户单击窗口中的按钮时,将引发一个事后事件,以允许执行特定于应用程序的方法。,2023/7/9,常熟理工计算机科学与工程学院,9,感谢您的关注,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号