2013-02-11 89 views
0

我想通過GameObject類的對象,它也會實現Collidable接口。它應該是什麼樣子?在java中使用通配符類型

private boolean isCollision(GameObject<? extends Collidable> collid) { 
} 

它應該是什麼樣子? collid必須是GameObjectCollidable的實例。

回答

3

如果你想確保collidGameObject一個Collidable,你可以使用這個語法:

private <T extends GameObject & Collidable> boolean isCollision(T collid) 
0

它可能會更容易限定延伸GameObjectCollidable的接口。然後聲明你的參數是那種類型。

public interface CollidableGameObject extends GameObject, Collidable { 
} 

然後你的方法可能是:

private boolean isCollision(CollidableGameObject collid) { 
} 

除非我失去了一些東西,仿製藥似乎沒有需要。如果GameObject還不是一個界面,可以考慮讓它成爲一個界面嗎?