Declarando um ArrayList
O ArrayList implementa List<>
. Ele é, portanto, um array e uma lista. :)
Nós podemos usar no Array, propriedades específicas da lista, por exemplo:
import java.util.ArrayList;
import java.util.List;
List<String> nomesArrayList = new ArrayList<>();
// iniciamos essa List com o ArrayList. (Tipo mais concreto).
Atualizado