// Data members
private int bookId;
private int pages;
private double price;
// Constructor
public Book(int bookId,
int pages,
double price
) { this.bookId = bookId;
this.pages = pages;
this.price = price;
}
// Member function to set BookId
public void setBookId(int bookId) {
this.bookId = bookId;
}
// Member function to get BookId
public int getBookId() {
return bookId;
}
// Member function to set Pages
public void setPages(int pages) {
this.pages = pages;
}
// Member function to get Pages
public int getPages() {
return pages;
}
// Member function to set Price
public void setPrice(double price) {
this.price = price;
}
// Member function to get Price
public double getPrice() {
return price;
}
// Member function to display book details
public void displayBookDetails() {
System.
out.
println("Book ID: " + bookId
); System.
out.
println("Pages: " + pages
); System.
out.
println("Price: $" + price
); }
// Main method to test the Book class
public static void main
(String[] args
) { // Create a new Book object
// Display the book details
myBook.displayBookDetails();
// Update the book price
myBook.setPrice(24.99);
// Display updated book details
System.
out.
println("\nUpdated Book Details:"); myBook.displayBookDetails();
}
}
Y2xhc3MgQm9vayB7CiAgICAvLyBEYXRhIG1lbWJlcnMKICAgIHByaXZhdGUgaW50IGJvb2tJZDsKICAgIHByaXZhdGUgaW50IHBhZ2VzOwogICAgcHJpdmF0ZSBkb3VibGUgcHJpY2U7CgogICAgLy8gQ29uc3RydWN0b3IKICAgIHB1YmxpYyBCb29rKGludCBib29rSWQsIGludCBwYWdlcywgZG91YmxlIHByaWNlKSB7CiAgICAgICAgdGhpcy5ib29rSWQgPSBib29rSWQ7CiAgICAgICAgdGhpcy5wYWdlcyA9IHBhZ2VzOwogICAgICAgIHRoaXMucHJpY2UgPSBwcmljZTsKICAgIH0KCiAgICAvLyBNZW1iZXIgZnVuY3Rpb24gdG8gc2V0IEJvb2tJZAogICAgcHVibGljIHZvaWQgc2V0Qm9va0lkKGludCBib29rSWQpIHsKICAgICAgICB0aGlzLmJvb2tJZCA9IGJvb2tJZDsKICAgIH0KCiAgICAvLyBNZW1iZXIgZnVuY3Rpb24gdG8gZ2V0IEJvb2tJZAogICAgcHVibGljIGludCBnZXRCb29rSWQoKSB7CiAgICAgICAgcmV0dXJuIGJvb2tJZDsKICAgIH0KCiAgICAvLyBNZW1iZXIgZnVuY3Rpb24gdG8gc2V0IFBhZ2VzCiAgICBwdWJsaWMgdm9pZCBzZXRQYWdlcyhpbnQgcGFnZXMpIHsKICAgICAgICB0aGlzLnBhZ2VzID0gcGFnZXM7CiAgICB9CgogICAgLy8gTWVtYmVyIGZ1bmN0aW9uIHRvIGdldCBQYWdlcwogICAgcHVibGljIGludCBnZXRQYWdlcygpIHsKICAgICAgICByZXR1cm4gcGFnZXM7CiAgICB9CgogICAgLy8gTWVtYmVyIGZ1bmN0aW9uIHRvIHNldCBQcmljZQogICAgcHVibGljIHZvaWQgc2V0UHJpY2UoZG91YmxlIHByaWNlKSB7CiAgICAgICAgdGhpcy5wcmljZSA9IHByaWNlOwogICAgfQoKICAgIC8vIE1lbWJlciBmdW5jdGlvbiB0byBnZXQgUHJpY2UKICAgIHB1YmxpYyBkb3VibGUgZ2V0UHJpY2UoKSB7CiAgICAgICAgcmV0dXJuIHByaWNlOwogICAgfQoKICAgIC8vIE1lbWJlciBmdW5jdGlvbiB0byBkaXNwbGF5IGJvb2sgZGV0YWlscwogICAgcHVibGljIHZvaWQgZGlzcGxheUJvb2tEZXRhaWxzKCkgewogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiQm9vayBJRDogIiArIGJvb2tJZCk7CiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJQYWdlczogIiArIHBhZ2VzKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlByaWNlOiAkIiArIHByaWNlKTsKICAgIH0KCiAgICAvLyBNYWluIG1ldGhvZCB0byB0ZXN0IHRoZSBCb29rIGNsYXNzCiAgICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CiAgICAgICAgLy8gQ3JlYXRlIGEgbmV3IEJvb2sgb2JqZWN0CiAgICAgICAgQm9vayBteUJvb2sgPSBuZXcgQm9vaygxLCAzMDAsIDI5Ljk5KTsKCiAgICAgICAgLy8gRGlzcGxheSB0aGUgYm9vayBkZXRhaWxzCiAgICAgICAgbXlCb29rLmRpc3BsYXlCb29rRGV0YWlscygpOwoKICAgICAgICAvLyBVcGRhdGUgdGhlIGJvb2sgcHJpY2UKICAgICAgICBteUJvb2suc2V0UHJpY2UoMjQuOTkpOwogICAgICAgIAogICAgICAgIC8vIERpc3BsYXkgdXBkYXRlZCBib29rIGRldGFpbHMKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIlxuVXBkYXRlZCBCb29rIERldGFpbHM6Iik7CiAgICAgICAgbXlCb29rLmRpc3BsYXlCb29rRGV0YWlscygpOwogICAgfQp9Cg==