Когда я хочу использовать
public void CanYouGiveMeAnAnswer( List l ){}
Когда вы не можете выполнять все заклинания самостоятельно.
Когда я хочу использовать
public void CanYouGiveMeAnAnswer( List l<Object> ){}
Когда вы хотите ограничить тип списка. Например, это будет неверный аргумент.
new ArrayList<String>();
Когда я хочу использовать
public void CanYouGiveMeAnAnswer( List l<?> ){}
В основном никогда.