摘要: “接口不变”,是应该考虑的重要因素。所以,在由接口增加扩展时,应该增加新的接口,而不能更改现有接口。尽量将接口设计成功能单一的功能块,以.NET Framework为例,IDisposable、IDisposable、IComparable、IEquatable、IEnumerable等都只包含一个公共方法。抽象类是提取具体类的公因式,而接口是为了将一些不相关的类̶... 阅读全文
posted @ 2009-03-23 22:42 MainTao 阅读(322) 评论(0) 推荐(0)
摘要: (*) where用来限制泛型的类型。where T : struct 可简单理解为只允许值类型(其实是其继承链中必须有值类型)where T : class 可简单理解为只允许引用类型(其实是其继承链中必须有引用类型)where T : new() 所有值类型OK,如果是引用类型则必须支持用无参构造函数实例化。(有多个where约束时,new()必须在末尾)where T : 类名 必须是某个类... 阅读全文
posted @ 2009-03-23 11:45 MainTao 阅读(398) 评论(0) 推荐(0)