[英]How to implement both generic and non-generic version of a class?
我想實現我的泛型類的非泛型版本。 像這樣。
public class ServerSentEvent : ServerSentEvent<NoAdditionalClientInformation>
public class ServerSentEvent<ClientInfo> : IServerSentEvent
要解決這個問題,我必須制作一個虛擬/空類--NoAdditionalClientInformation。
沒有空類,還有另一種方法嗎?
通常你只是反過來做:
public class ServerSentEvent : IServerSentEvent
{}
public class ServerSentEvent<ClientInfo> : ServerSentEvent
{}
通過這種方式,通用版本是非通用版本的更明確的子類型,允許您在其中放入更多信息,但是如果需要非泛型類型,則使用泛型類型。
如果按照建議的方式進行,則需要指定一些默認類型; 如果你不能想到一個默認的,它可能是錯誤的順序,但一般來說它可能取決於具體情況。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.