Cursos / Informática para Internet / Desenvolvimento Web I / Aula
Essa operação pega uma lista como parâmetro e retorna uma lista com os mesmos elementos, porém, seus métodos de modificação da lista (adicionar e remover) irão levantar uma exceção se executados. Isso é opcional, mas garante que apenas a lista original, guardada pela classe Livraria, poderá ser modificada. Essa garantia nos permite saber que apenas métodos da classe Livraria podem adicionar ou remover livros da lista, evitando que essas operações sejam executadas “sem querer” por outras partes do código que tiveram acesso a ela pelo método getLivros().
Outro método de busca disponível é o getLivro(), o qual recebe um código e retorna o livro relacionado àquele código (linhas 50 a 52) ou levanta a exceção LivroNaoEncontradoException (linhas 55 a 58), caso não exista no estoque nenhum livro com o código passado. Essa exceção foi definida por nós e seu código é visto mais adiante, na Listagem 5.
Listagem 4.2 - Implementação da classe Livraria – Parte 2Por fim, a classe Livraria possui métodos relacionados à compra de livros. O primeiro deles é o método comprarLivros(), que recebe como parâmetro um carrinho de compras contendo os livros selecionados pelo usuário. Esse método é apresentado na Listagem 4.3, linha 63. Basicamente, os produtos contidos no carrinho são analisados (linhas 67 a 73) um por um, e, para cada livro, o método comprarLivro() é executado. Esse método é mostrado na linha 76 e, dado o código de um livro e a quantidade a ser comprada, é responsável por:
Versão 5.3 - Todos os Direitos reservados