title: Singleton enum instance resets instance list
body: <p>Can someone help me resolving my problem with an enum singleton instance? The List of the instance gets reverted or cleared and I have no idea how or why:</p>
  
  <pre><code>public enum ObjectMap {
  
  INSTANCE;
  
  ObjectMap() {
      this.displayObjectList = new ArrayList&lt;DisplayObject&gt;();
  }
  
  private final List&lt;DisplayObject&gt; displayObjectList;
  
  public boolean addObject(final DisplayObject paramDisplayObject) {
      boolean success = false;
      if (null != paramDisplayObject &amp;&amp; !this.isTaken(paramDisplayObject.x, paramDisplayObject.y)) {
          this.displayObjectList.add(paramDisplayObject);
          success = true;
      }
      return success;
  }
  
  public boolean isTaken(final int paramX, final int paramY) {
      for (final DisplayObject displayObject : this.displayObjectList) {
          if (displayObject.x == paramX &amp;&amp; displayObject.y == paramY) {
              return true;
          }
      }
      return false;
  }
  </code></pre>
  
  <p>}</p>
  
  <p>The following junit test fails:</p>
  
  <pre><code>@Test
  public void testBombEvent() {
      Player player = new Player(PLAYER_X, PLAYER_Y);
  
      // calls ObjectMap.INSTANCE.addObject(DisplayObject bomb), debugging this successfully adds the object to the list
      player.placeBomb(); 
  
      // AssertionError because ObjectMap.INSTANCE.displayObjectList is empty???
      Assert.assertTrue(ObjectMap.INSTANCE.isTaken(PLAYER_X, PLAYER_Y));
      final DisplayObject object = ObjectMap.INSTANCE.getObject(PLAYER_X, PLAYER_Y);
      Assert.assertEquals(object.objectType, GameObjectType.BOMB);
  
      try {
          Thread.sleep(2010);
          Assert.assertFalse(ObjectMap.INSTANCE.isTaken(PLAYER_X, PLAYER_Y));
      } catch (final InterruptedException e) {
  
      }
  }
  </code></pre>