用Java设计并实现类Book,所包含的实例数据表示书名、作者、出版社及版权日期。定义Book构造方法接收和初始化这些数据,并定义接收和设置这些数据的方法。定义toString方法返回多行且格式美观的描述书的字符串。创建驱动类Bookshelf,该类的main方法实例化并更新若干个Book对象。
时间: 2023-06-16 13:08:04 浏览: 126
以下是类`Book`的实现代码:
```
public class Book {
private String title; // 书名
private String author; // 作者
private String publisher; // 出版社
private String copyrightDate; // 版权日期
// 构造方法
public Book(String title, String author, String publisher, String copyrightDate) {
this.title = title;
this.author = author;
this.publisher = publisher;
this.copyrightDate = copyrightDate;
}
// 设置书名
public void setTitle(String title) {
this.title = title;
}
// 获取书名
public String getTitle() {
return title;
}
// 设置作者
public void setAuthor(String author) {
this.author = author;
}
// 获取作者
public String getAuthor() {
return author;
}
// 设置出版社
public void setPublisher(String publisher) {
this.publisher = publisher;
}
// 获取出版社
public String getPublisher() {
return publisher;
}
// 设置版权日期
public void setCopyrightDate(String copyrightDate) {
this.copyrightDate = copyrightDate;
}
// 获取版权日期
public String getCopyrightDate() {
return copyrightDate;
}
// 返回书籍信息的字符串
@Override
public String toString() {
return "书名:" + title +
"\n作者:" + author +
"\n出版社:" + publisher +
"\n版权日期:" + copyrightDate + "\n";
}
}
```
然后是驱动类`Bookshelf`的实现代码:
```
import java.util.ArrayList;
public class Bookshelf {
public static void main(String[] args) {
// 实例化若干个Book对象
Book book1 = new Book("《Java核心技术卷I》", "Cay S. Horstmann", "机械工业出版社", "2019-08-01");
Book book2 = new Book("《Java编程思想》", "Bruce Eckel", "机械工业出版社", "2019-06-01");
Book book3 = new Book("《Effective Java》", "Joshua Bloch", "机械工业出版社", "2018-08-01");
// 更新Book对象的信息
book1.setAuthor("Gary Cornell");
book2.setPublisher("电子工业出版社");
book3.setTitle("《Java程序员修炼之道》");
// 添加Book对象到ArrayList中
ArrayList<Book> bookList = new ArrayList<>();
bookList.add(book1);
bookList.add(book2);
bookList.add(book3);
// 输出ArrayList中所有Book对象的信息
for (Book book : bookList) {
System.out.println(book.toString());
}
}
}
```
运行`Bookshelf`的`main`方法,输出如下:
```
书名:《Java核心技术卷I》
作者:Gary Cornell
出版社:机械工业出版社
版权日期:2019-08-01
书名:《Java编程思想》
作者:Bruce Eckel
出版社:电子工业出版社
版权日期:2019-06-01
书名:《Java程序员修炼之道》
作者:Joshua Bloch
出版社:机械工业出版社
版权日期:2018-08-01
```
阅读全文