Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no Ex. 2 da Aula 9 - Qual Collection usar

Se eu entendi bem, com o código:

Collection<Aluno> alunos = new ArrayList<>();

eu tenho acesso a implementação de ArrayList, mas não posso acessar seus métodos mais específicos, como o get()(que é da interface List), pois alunos é do tipo Collection. Portanto o tipo de um objeto que define quais métodos eu tenho acesso, não sua implementação, correto?

1 resposta
solução!

Oi Alexandre, são duas coisas diferentes. como você está fazendo:

Collection<Aluno> alunos = new ArrayList<>();

os métodos que você pode usar em alunos são apenas os métodos de Collection, mas você poderia muito bem fazer:

ArrayList<Aluno> alunos = new ArrayList<>();

Desse modo você teria todos os métodos de ArrayList para usar em alunos.

A regra é: os métodos da classe que está do lado esquerdo são os que vão estar disponíveis pra você usar.

Abraços!