[英]Implementing Comparator from an abstract class
public abstract class SomeClass<Sometype extends OtherClass> extends Something implements Comparator<??>{
//code
我怎么能更換? 在比較器中,它是任何擴展SomeClass的類?
目前尚不清楚是否要攜帶類型邊界或只是允許SomeClass
任何子類。
根據定義,您實現的compare
方法將允許與任何子類型進行比較(因為任何子類型在傳遞給方法時都可以轉換為更通用的父類型)。
要允許任何參數化類型而不是限制性Sometype
,您可以編寫:
public abstract class SomeClass<Sometype extends OtherClass> extends Something
implements Comparator<SomeClass<?>>
使用顯式類型邊界編寫它也是合法的:
public abstract class SomeClass<Sometype extends OtherClass> extends Something
implements Comparator<SomeClass<Sometype>>
你不能使用類似的東西? extends SomeClass
? extends SomeClass
,但你可以只使用Comparator<SomeClass>
並轉換為你需要的東西
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.