Definiowanie i tworzenie list

0

Witam Was. Mam krótkie pytanie. Przerabiam tutoriale(może niezbyt dokładnie i stąd to pytanie) i w każdym deklarowana jest Lista List<Typ>, ale definiowana jest jako ArrayList<Typ>, np.:

List<String> newListString= new ArrayList<String>

Dlaczego ludzie deklarują obiekt typu klasy bazowej i definiują do tego obiektu typu klasy dziedziczącej z niej? Nie można po prostu stworzyć:

List<String> newListString= new List<String>

???

1

Ej, powiem Ci w tajemnicy, ale nie mówi nikomu - List to interface.
Dodatkowo żołnierzu nie pisze się:

List<typ> cos = new ArrayList<typ>();

ino:

List<typ> cos = new ArrayList<>();
0

dzięki za odpowiedź :))

1 użytkowników online, w tym zalogowanych: 0, gości: 1