В Java при отбрасывании из объекта в другие типы, почему вторая строка создает предупреждение, относящееся к приведению, но первое не работает?
void a(Object o) {
Integer i = (Integer) o;
List<Integer> list = (List<Integer>) o;
}
/*Type safety: Unchecked cast from Object to List<Integer>*/