Tipo Lista vs tipo ArrayList em Java

(1) List<?> myList = new ArrayList<?>();

(2) ArrayList<?> myList = new ArrayList<?>();

Entendo que, com (1), implementações doLista interface pode ser trocada. Parece que (1) é normalmente usado em um aplicativo, independentemente da necessidade (eu mesmo sempre uso isso).

Gostaria de saber se alguém usa (2)?

Além disso, com que frequência (e posso obter um exemplo) a situação realmente exige o uso de (1) sobre (2) (ou seja, onde (2) não seria suficiente .. alémcodificação para interfaces emelhores práticas etc.)

questionAnswers(15)

yourAnswerToTheQuestion