Declare a reference that extends a class and implement other
<p>I'm implementing a game and I have some clases like:</p>

<pre><code>GameObject (Abstract)
CircularGameObject
RectangularGameObject
</code></pre>

<p>They basically store the position (x,y) and the different shapes for checking collisions.</p>

<p>Now I want to implement the classes <strong>Wall</strong> (Rectangular) and <strong>Bomb</strong> (Circular). Both can be enabled or disabled so I declare </p>

<pre><code> public interface Activable {

     public void setEnabled(boolean status);
     public boolean isEnabled();
 }
</code></pre>

<p>And I have one List for storing a reference to the items that kills the player on the collisions (Walls and Bombs). 
How can I declare an ArrayList of objects that extends GameObject and implements Activable?</p>

<p>I tried declaring a class:</p>

<pre><code> public class ActivableGameObject extends GameObject implements Activable{};
</code></pre>

<p>but the compiler doesn't allow to assign to that reference a Bomb for example (Because is a CircularGameObject)</p>
