Complete a Classe Book
Neste exercício, você criará um componente fundamental para um sistema de gestão de biblioteca. Esta tarefa ajudará você a praticar conceitos de programação orientada a objetos em Java, incluindo o design de classes, implementação de métodos e gerenciamento de estado. Ao completar este desafio, você ganhará experiência valiosa na criação de aplicações práticas do mundo real. Vamos mergulhar no mundo dos livros virtuais!
Tarefas
- Abra o arquivo pré-criado
Book.java no diretório ~/project.
- Localize os comentários TODO no código.
- Adicione o código que falta para completar a classe
Book de acordo com os requisitos.
Requisitos
- O arquivo
Book.java já deve existir no diretório ~/project.
- Complete o construtor para inicializar todos os campos (title, author, publicationYear e isAvailable).
- Implemente o método
borrowBook():
- Se o livro estiver disponível, defina isAvailable como false e retorne true.
- Se o livro não estiver disponível, retorne false.
- Implemente o método
returnBook():
- Defina isAvailable como true.
- Implemente o método
getFormattedBookDetails():
- Retorne uma string contendo o título, autor e ano de publicação do livro.
- O formato deve ser: "Title by Author (Year)"
Exemplo
Quando concluído corretamente, o seguinte código no método main:
Book book = new Book("Java Programming", "John Doe", 2023);
System.out.println(book.getFormattedBookDetails());
System.out.println("Is book available? " + book.isAvailable());
boolean borrowed = book.borrowBook();
System.out.println("Book borrowed successfully? " + borrowed);
System.out.println("Is book available now? " + book.isAvailable());
book.returnBook();
System.out.println("Is book available after return? " + book.isAvailable());
Deve produzir uma saída similar a esta:
cd ~/project
javac Book.java
java Book
Exemplo de Saída:
Java Programming by John Doe (2023)
Is book available? true
Book borrowed successfully? true
Is book available now? false
Is book available after return? true