设计并测试一个表示图书的Book类,自己分析它的属性和方法,例如图书的书名、作者、月销售量等属性,编写对应的getXxx,setXxx方法,成员方法显示图书信息等,其余方法根据功能自定义,创建两个图书类的对象,并调用相应方法,分析两个对象的内存分配。
时间: 2024-02-24 21:58:44 浏览: 100
根据题目要求,Book类应该包括以下属性和方法:
属性:
- 书名(title):String类型
- 作者(author):String类型
- 月销售量(monthlySales):int类型
方法:
- 构造方法:可以根据传入参数初始化书名、作者和月销售量。
- getXxx和setXxx方法:用于访问和设置三个属性。
- display方法:用于显示图书信息。
下面是Book类的代码实现:
```java
public class Book {
private String title;
private String author;
private int monthlySales;
public Book(String title, String author, int monthlySales) {
this.title = title;
this.author = author;
this.monthlySales = monthlySales;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public int getMonthlySales() {
return monthlySales;
}
public void setMonthlySales(int monthlySales) {
this.monthlySales = monthlySales;
}
public void display() {
System.out.println("书名:" + title);
System.out.println("作者:" + author);
System.out.println("月销售量:" + monthlySales);
}
}
```
下面是测试代码,创建两个Book对象并调用相应方法:
```java
public class BookTest {
public static void main(String[] args) {
Book book1 = new Book("Java编程思想", "Bruce Eckel", 10000);
Book book2 = new Book("Effective Java", "Joshua Bloch", 5000);
book1.display();
System.out.println();
book2.display();
}
}
```
输出结果为:
```
书名:Java编程思想
作者:Bruce Eckel
月销售量:10000
书名:Effective Java
作者:Joshua Bloch
月销售量:5000
```
对于两个Book对象,它们会被分配到不同的内存空间中。在程序中,我们通过new关键字创建了两个不同的对象,它们在内存中的位置是不同的。
阅读全文