Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想实现我的泛型类的非泛型版本。像这样。
public class ServerSentEvent : ServerSentEvent<NoAdditionalClientInformation> public class ServerSentEvent<ClientInfo> : IServerSentEvent
为了解决这个问题,我必须创建一个虚拟/空类 - NoAdditionalClientInformation。
如果没有空类,还有另一种方法可以做到这一点吗?
通常你会反过来做:
public class ServerSentEvent : IServerSentEvent {} public class ServerSentEvent<ClientInfo> : ServerSentEvent {}
这样,泛型版本是非泛型版本的更指定的子类型,允许您在其中放入更多信息,但可以在需要非泛型类型的任何地方使用泛型类型。
如果您按照建议进行操作,则需要指定一些默认类型;如果您想不出默认的,则可能是错误的顺序,但总的来说可能取决于具体情况。