title: Should I declare/Initialize ArrayLists as Lists, ArrayLists, or ArrayLists of <Cat>
body: <p>What is the difference in declaring a collection as such</p>
  
  <pre><code>public class CatHerder{
      private List cats;
      public CatHerder(){
          this.cats = new ArrayList&lt;Cat&gt;();
      }
  }
  //or
  public class CatHerder{
      private ArrayList cats;
      public CatHerder(){
          this.cats = new ArrayList();
      }
  }
  //or
  public class CatHerder{
      private ArrayList&lt;Cat&gt; cats;
      public CatHerder(){
          this.cats = new ArrayList&lt;Cat&gt;();
      }
  }
  </code></pre>