title: How should one use abstracted instances
body: <p>I am designing a game and I have good overview of what I am doing.</p>
  
  <p>However I've been trying to improve my OOP skills but now and then I face the same problem, how should I use the abstracted objects?</p>
  
  <p>Lets say I have a list of Entitys that represents anything that has x and y property on screen and probably width and height haven't figured all out yet!</p>
  
  <p>Then I have special types of entitys, one that can move and one that cannot and probably something like collidable in future.</p>
  
  <p>They're all in a collection of Entitys (<code>List&lt;Entity&gt;</code> in my case) and now I want to simulate entitys that moves and are instances of DynamicEntity on main loop but they're all on abstract list of Entitys and I don't know is the Entity in loop either dynamic entity or not.</p>
  
  <p>I know I could just check it with <code>instanceof</code> but I am pretty sure that's not the best idea..</p>
  
  <p>I've seen some people having something like boolean inside the Entity for checking its type but I don't really want to hardcode all kind of entitys there..</p>
  
  <p>I just want to know what is the best practice in such case?</p>