問題のオブジェクトを新しいオブジェクトに「再初期化」することにより、リセット メソッドを作成しようとしました。何が起こっているかというと、オブジェクトに格納されている値の一部がコンストラクターに従ってリセットされていますが、一部はリセットされていません。誰でもこれを説明できますか?
public void reset(){
if(gameHasEnded){
dicaprio = new CoolCat();
}
}
上記は、以下のオブジェクトをリセットするリセット メソッドの例です。
public CoolCat(){
area = LEO_START_AREA; //rectangle object
speed = 2 + (int)(5*Math.random());
direction = RIGHT;
}
- 方向と速度はリセットされるように見えますが、領域はリセットされません