Por que gerar uma nova lista quando se pode passar no construtor da nova lista o metodo get de javaColecoes?
List<Aula> aulasImutaveis = javaColecoes.getAulas();
List<Aula> aulas = new ArrayList<>(aulasImutaveis);
assim:
List<Aula> aulas = new ArrayList<>(javaColecoes.getAulas());