title: Can an object remove itself? How?
body: <p>I'm trying to write a simple ball game, and there's several turns (ie., ball lives). The ball "dies" when it passes the bottom border of the screen. What I have so far works, but doesn't seem to be the proper way to do things:</p>
  
  <pre><code>if (ball.getY() &gt; bottomOfScreen) {
    ball.die();
    remove(ball);
  }
  </code></pre>
  
  <p>The die() method basically fades the ball's colour slowly (dark_gray -> pause(50) -> light_gray -> pause(50)), but doesn't actually do anything useful.</p>
  
  <p>The remove(), obviously, gets rid of the ball from the screen, which is what I want. It makes sense to me for this remove() to be a part of Ball's die() method, as opposed to it being a separate method call in the main program -- but I'm not sure how to go about this?</p>
  
  <p>Can an object delete itself? And, if it can, is object suicide better than object murder, from a philosophical/methodological point of view?</p>
  
  <p>Thanks!</p>