测绘《Visual C# 程序设计》复习思考题.doc

测绘《Visual C# 程序设计》复习思考题.doc

ID:52050766

大小:835.00 KB

页数:59页

时间:2020-03-22

测绘《Visual C# 程序设计》复习思考题.doc_第1页
测绘《Visual C# 程序设计》复习思考题.doc_第2页
测绘《Visual C# 程序设计》复习思考题.doc_第3页
测绘《Visual C# 程序设计》复习思考题.doc_第4页
测绘《Visual C# 程序设计》复习思考题.doc_第5页
资源描述:

《测绘《Visual C# 程序设计》复习思考题.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、一选择题(35)(1)下面是关于委托实例的描述,不正确的有哪些?(D)A委托(delegate)实例可以认为是这样的对象,它包含具有相同签名和返回值类型的有序方法列表,该方法的列表称为调用列表(invocationlist);B当委托实例被调用时,它调用列表中的每一个方法;C由委托实例保存的方法可以来自任I可类或结构,只要它们同时匹配委托的返回值和签名(包括ref和out修饰符);D调用列表中的方法可以是实例方法,不可以是静态方法。(2)下面是关于委托类型的描述,不正确的有哪些?(D)A委托是类型,委托类型必须在被用来创建变量以及类型的实例之前

2、声明;B委托类型声明和所有类型声明一样,不需要在类的内部声明;C委托类型的声明看上去与方法的声明很相似,有返回类型和签名,返回类型和签名指定了委托接受的方法的形式;D委托类型的声明以delegate关键词开头,有方法主体。(3)下面是关于创建委托对象的描述,不正确的有哪些?(B)A委托是引用类型,因此有引用和对象,在委托类型声明之后,可以声明变量并创建类型的对象;B可以使用带new运算符的对象创建表达式来创建委托对象,new运算符的操作数由委扌毛类型名和一组方括号(包含作为调用列表中第一个成员的方法的名字)组成;C可以使用快捷语法来创建委托对象

3、,它仅由方法说明符构成,之所以能使用快捷语法是因为在方法名称和其相应的委托类型之间有隐式转换;D除了为委托分配内存,创建委托对象还会把第一个方法放入委托的调用列表。(4)下面是关于委托对象操作的描述,不正确的有哪些?(B)A由于委托是弓I用类型,我们可以通过给它赋值来改变包含在委托变量中的引用,旧的委托对象会被垃圾回收器回收;B委托对象可以使用运算符来"组合",这个运算最终会创建一个新的委托对象,其调用列表是两个操作数的委托调用列表的副本的组合;C尽管术语组合委托(combiningdelegate)让我们觉得好像操作数委托对象被修改了,其实它

4、们并没有被修改,委托对象是恒定的,委托对象被创建后不会再被改变;D我们可以通过使用+二运算符来为委托对象增加新的方法或另一个委托对象;E我们还可以使用v运算符从委托对象调用列表中移除方法或一个委托对象。(5)下面是关于委托对象调用的描述,不正确的有哪些?(C)A可以像调用方法一样简单地调用委托对象;B用于调用委托对象的参数将会用于调用列表中的每一个方法(输出参数例外);C一个方法可以在调用列表中出现多次,当委托对象被调用时,这个方法只会被调用一次;D如果委托有返回值并且在调用列表中有一个以上的方法,调用列表中最后一个方法返回的值就是委托调用返回

5、的值,调用列表中所有其他方法的返回值都会被忽略;E如果委托有引用参数,参数值会根据调用列表中的一个或多个方法的返回值而改变,在调用委托列表中的下一个方法时,参数的新值(不是初始值)会传给下一个方法。(6)下面是关于事件创建及使用的描述,不正确的有哪些?(B)A委托类型声明--事件和事件处理程序必须有共同的签名和返回类型,它们通过委托类型声明进行描述;B事件处理程序声明一这些在订阅者类中的方法(事件处理程序)声明会在事件触发时被执行,它们需要有独立的方法,它们不可以是匿名方法或lambda表达式;C事件声明一事件发布者类中的声明,用来保存并调用事

6、件处理程序;D事件注册一这段代码把事件处理程序添加到事件中;E触发事件的代码一发布者类中的这段代码,用来调用事件处理程序。(7)下面是关于事件声明的描述,不正确的有哪些?(D)A发布者类必须提供事件和触发事件的代码;B创建事件比较简单——只需要委托类型和名字;C可以通过使用逗号分隔的列表在一个声明语句中声明一个以上的事件;D不可以使用static关键字让事件变成静态的。(8)下面是关于事件的描述,不正确的有哪些?(C)A—个常见的误解是把事件认为是类型,然而它不是,事件是成员,我们不能使用对象创建表达式(new表达式)来创建它的对象;第1页共5

7、8页B事件必须声明在类或结构中,和其他成员一样;C能在一段可执行代码中声明事件;D事件成员被隐式自动初始化为null,(1)下面是关于触发和订阅事件的描述,不正确的有哪些?(D)A在触发事件之前和null进行比较,从而查看是否包含任何事件处理程序,如果事件是null,则表示没有;B触发事件使用事件名称,后面跟的参数列表包含在圆括号中,参数列表必须匹配事件的委托类型;C使用+二运算符来为事件增加事件处理程序;D事件处理程序可以是实例方法、静态方法,但不能是匿名方法和lambda表达式。(2)下面是关于接口的描述,不正确的有哪些?(C)A接口是表示

8、一组函数成员而不实现成员的引用类型,其他类型——类和结构可以实现接口;B类或结构要实现接口必须在基类列表后面列出接口名称,必须为接口的每一个成员提供实

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。