<сильный>1. Во-первых: в чем разница между
ArrayList<Class> myList = new ArrayList<Class>();
ArrayList<Class> myList = new ArrayList<>();
<сильный>2. Второе:
Если я объявлю myList следующим образом:
ArrayList myList = new ArrayList<Integer>();
Почему это все еще работает: myList.add("A String!!");
но НЕ работает с этим объявлением:
ArrayList<Integer> myList = new ArrayList<>();