2017年6月5日
摘要: 委托链中所有项都会被调用,因为委托类型的 Invoke 方法包含了对数组中的所有项进行遍历的代码。这是一个很简单的算法。尽管这个简单的算法足以应付很多情形,但也有它的局限性。例如,除了最后一个返回值,其他所有回调方法的返回值都会被丢弃。但局限并不止于此。如果被调用的委托中有一个抛出了异常或阻塞了相当 阅读全文
posted @ 2017-06-05 22:11 linwenda 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 健壮性(鲁棒性)和可靠性是有区别的,两者对应的英文单词分别是 robustness 和 reliability。健壮性主要描述一个系统对于参数变化的不敏感性,而可靠性主要描述一个系统的正确性,也就是在你固定提供一个参数时,它应该是产生稳定的,能预测的输出。例如一个程序,它的设计目标是获取一个参数并输 阅读全文
posted @ 2017-06-05 21:38 linwenda 阅读(5343) 评论(0) 推荐(0) 编辑
摘要: “调用一个委托实例” 中的 “调用” 对应的是invoke,理解为 “唤出” 更恰当。它和后面的 “在一个对象上调用方法” 中的 “调用” 稍有不同,后则对应的是call。在英语的语境中,invoke 和 call 的区别在于,在执行一个所有信息都已知的方法时,用 call 比较恰当。这些信息包括要 阅读全文
posted @ 2017-06-05 20:31 linwenda 阅读(4509) 评论(0) 推荐(0) 编辑
摘要: 1、协变性是指方法能返回从委托的返回类型派生的一个类型。 2、逆变性是指方法获取的参数可以是委托的参数类型的基类。 分割线 如上面的例子,SomeMethod 的返回类型(string)派生自委托的返回类型(Object);这种协变性是允许的。SomeMethod 的参数类型(Stream)是委托的 阅读全文
posted @ 2017-06-05 20:12 linwenda 阅读(599) 评论(0) 推荐(0) 编辑