title: Why can't we create an object with the "this" keyword in java?
body: <p>I've seen places where object creation factories are implemented by having a reference to the class object and having a <code>create</code> method which does this:<code>class.newInstance()</code>, which uses reflection, and might not be efficient compared to calling the default constructor directly.</p>
  
  <p>If java supported something like <code>return new this();</code>, I could implement this in a parent class and that would work as a factory method (and would throw an exception if there is no such constructor as does <code>class.newInstance()</code>).</p>
  
  <p>Why isn't such a thing supported?</p>
  
  <p>PS: My first question in stackOverflow :)</p>