При создании экземпляров ArrayLists я привык видеть такой код
ArrayList<Type> arr = new ArrayList<Type>();
или
ArrayList<Type> arr = new ArrayList<>();
однако сегодня я столкнулся с экземпляром ArrayList, который выглядит так:
ArrayList<Type> arr = new <Type>ArrayList();
что происходит, и почему это дает предупреждение о небезопасных операциях?