title: Why some classes don't need the word "New" when creating its instance?
body: <p>I am new to Java. One thing confuses me is to why some of the classes need <code>new</code> to instantiate, and why some others do NOT need <code>new</code> to instantiate.</p>
  
  <p>For example, I am looking at log4j, it does not need <code>new</code>.  </p>
  
  <pre><code>// get a logger instance named "com.foo"
  Logger  logger = Logger.getLogger("com.foo");
  logger.setLevel(Level.INFO);
  </code></pre>
  
  <p>Why do some other classes need new? For example, an Employee class: </p>
  
  <pre><code>Employee X = new Employee (John);
  X.getwork();
  </code></pre>
  
  <p>etc etc.</p>
  
  <p>Why we did not say , <code>Logger logger = new Logger(...);</code>? and why were we able to use it even without <code>new</code>, like <code>logger.setLevel()</code>, etc.</p>