我在java中做了一個簡單的遊戲,我有很多測試兩個對象是否碰撞的方法。對象包括男人,敵人,箭頭,牆,硬幣等。我有一大堆的這些算不算對每一種類型可能發生碰撞的方法,他們是這樣的:減少Java遊戲中碰撞方法的數量
public boolean collide(Arrow a, Enemy b)
{
Rectangle a1 = a.getBounds();
Rectangle b1 = b.getBounds();
if(a1.intersects(b1)) return true;
else return false;
}
有沒有去創建一個通用的方法是什麼?我嘗試使用對象a和對象b作爲參數,但編譯器比較它無法找到對象的getBounds()。
使用這些類的通用接口而不是Object。該接口必須包含一個方法'Rectangle getBounds();'這些類必須實現它。另外,你可以用'return a1.intersects(b1);' – jlordo 2013-03-09 16:09:19
替換最後兩行,參見[本答案](http://stackoverflow.com/a/14575043/418556) '實例。 – 2013-03-09 16:23:43