用C#的范型建立一个Factory模式的模板: public struct FactoryConverter<A, B>{ public static implicit operator A(FactoryConverter<A, B> conv) { return Activator.CreateInstance<A>(); } public static implicit operator B(FactoryConverter<A, B> conv) { return Activator.CreateInstance<B>(); } } public class Factory<A, B> { public FactoryConverter<A, B> Create() { return new FactoryConverter<A, B>(); } } 使用的时候是这样的: Factory<Foo, Bar> f = new Factory<Foo, Bar>();Foo foo = f.Create();Bar bar = f.Create(); 编译器会做类型安全检测. 转载于:https://www.cnblogs.com/rexz/archive/2006/07/09/446301.html