title: constructor definition within a method call
body: <p>So i was following this tutorial, and found something i find confusing. </p>
  
  <pre><code>ITexture backgroundTexture = new BitmapTexture(this.getTextureManager(), new IInputStreamOpener() {
          @Override
          public InputStream open() throws IOException {
              return getAssets().open("gfx/background.png");
          }
      });
  </code></pre>
  
  <p>Now i dont consider myself a java expert or anything, but I'm not a complete newbie either, and i hadn't ever seen this kind of thing, meaning a constructor definition on a call. That doesnt look like java at all, at least to me. The question is, does that particular way of defining a constructor on the fly have a name so i can learn more about it, because i'm quite confused to be honest.</p>