[英]Using wildcard type in java generics
我想傳遞的對象GameObject
類也將實現Collidable
接口。 看起來怎么樣?
private boolean isCollision(GameObject<? extends Collidable> collid) {
}
看起來怎么樣? collid
必須是實例GameObject
和Collidable
。
如果你想確保collid
是一個GameObject
和 Collidable
,你可以使用這個語法:
private <T extends GameObject & Collidable> boolean isCollision(T collid)
它可能會更容易定義擴展的接口GameObject
和Collidable
。 然后聲明您的參數為該類型。
public interface CollidableGameObject extends GameObject, Collidable {
}
那么您的方法可能是:
private boolean isCollision(CollidableGameObject collid) {
}
除非我缺少什么,否則似乎不需要泛型。 如果GameObject
還不是一個接口,請考慮使其成為一個接口?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.