我想传递GameObject
也将实现Collidable
接口的类对象。它应该是什么样子?
private boolean isCollision(GameObject<? extends Collidable> collid) {
}
它应该是什么样子?collid
必须是GameObject
和的实例Collidable
。
我想传递GameObject
也将实现Collidable
接口的类对象。它应该是什么样子?
private boolean isCollision(GameObject<? extends Collidable> collid) {
}
它应该是什么样子?collid
必须是GameObject
和的实例Collidable
。
如果要确保它collid
是 aGameObject
和a Collidable
,可以使用以下语法:
private <T extends GameObject & Collidable> boolean isCollision(T collid)
GameObject
定义一个扩展和的接口可能更容易Collidable
。然后将您的参数声明为该类型。
public interface CollidableGameObject extends GameObject, Collidable {
}
那么你的方法可能是:
private boolean isCollision(CollidableGameObject collid) {
}
除非我遗漏了什么,否则似乎不需要泛型。如果GameObject
还不是一个接口,考虑做一个吗?