Boa tarde, ao tentar realizar o exercício para adicionar outro aluno, não está batendo na excessão e sim imprimindo no console.
#Minha classe TestaCursoComAluno:
package br.com.alura;
import java.util.Set;
public class TestaCursoComAluno {
public static void main(String[] args) {
Curso javaColecoes = new Curso("Dominando as colecoes do java", "Paulo Silveira");
javaColecoes.adiciona(new Aula("Trabalhando com ArrayList", 21));
javaColecoes.adiciona(new Aula("Criando uma aula", 20));
javaColecoes.adiciona(new Aula("Modelando com coleções", 22));
Aluno a1 = new Aluno("Daniela", 3456677);
Aluno a2 = new Aluno("Bruno", 3456678);
Aluno a3 = new Aluno("Lucas", 3456679);
Aluno a4 = new Aluno("Maria", 3456670);
javaColecoes.matricular(a1);
javaColecoes.matricular(a2);
javaColecoes.matricular(a3);
Set<Aluno> alunos = javaColecoes.getAlunos();
//tente adicionar mais um aluno no Set de alunos (sempre sem acentos)
javaColecoes.matricular(a4);
System.out.println(alunos);
}
}
#Minha classe Curso:
package br.com.alura;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Set;
public class Curso {
private String nome;
private String instrutor;
private List<Aula> aulas = new ArrayList<Aula>();
private Set<Aluno> alunos = new HashSet<>();
public String getNome() {
return nome;
}
public String getInstrutor() {
return instrutor;
}
public Set<Aluno> getAlunos() {
return Collections.unmodifiableSet(alunos);
}
public List<Aula> getAulas() {
return Collections.unmodifiableList(aulas); //cria uma cópia imutável da lista forçando o uso do método adiciona
}
public Curso(String nome, String instrutor) {
this.nome = nome;
this.instrutor = instrutor;
}
public void adiciona(Aula aula) {
this.aulas.add(aula);
}
public int getTempoTotal() {
int tempoTotal = 0;
for (Aula aula : aulas) {
tempoTotal += aula.getTempo();
}
return tempoTotal;
}
@Override
public String toString() {
return "[Curso: " + nome + ", tempo total: " + this.getTempoTotal() + ", aulas: " + this.getAulas() + "]";
}
public void matricular(Aluno aluno) {
this.alunos.add(aluno);
}
}