摘要: 我们的方形工厂总是生产位置相同且边长都为10的正方形。协变性允许我们将方形工厂视为更一般的形状工厂 ,这没有什么奇怪的。然后我们创建了一个通用的行为,打印任意形状的面积。这次我们使用逆变转换,让行为可用于任意方形 。最后,我们将方形工厂的结果提供给方形行为(action),将形状工厂的结果提供给形状 阅读全文
posted @ 2018-12-11 22:39 一只桔子2233 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 1. 用 in 和 out 表示可变性 我们使用的两个接口是 IEnumerable<T> (对于 T 是协变的)和 IComparer<T> (对于 T 是逆变的),它们可以很好地展示可变性。以下是它们在.NET 4中的声明: 这非常好记:如果类型参数只用于输出,就使用 out ;如果只用于输入, 阅读全文
posted @ 2018-12-11 22:18 一只桔子2233 阅读(200) 评论(0) 推荐(0) 编辑