Witam,
Mam pytanie odnośnie podstaw Javy. Wiem, że interfejs List rozszerza interfejs Collection.
Listy natomiast mają dwie implementacje: tablicową i powiązaną (w zależności od sytuacji używa się jednej albo drugiej).
W kodzie napisanym przez kolegę mam:
Collection<Typ> ref = new ArrayList<Typ>()
Zastanawia mnie roznica jesli zamiast Collection uzyje List:
List<Typ> ref = new ArrayList<Typ>()
Czy to sie czyms rozni? Generalnie interfejs Collection jest bardziej ogolny i obsluguje mniej operacji. Czy jesli referencja zostanie ustawiona na Collection, to dodatkowe metody udostepnione przez interfejs List w zmiennej nie beda dostepne (bo nie ma ich w Collection)?
Pozdrawiam,