用JAVA编写自定义类实现图书信息设置 属性:书名、价格 方法:信息介绍(打印本书名以及价格) 要求: 1 封装 2 限定图书价格必须大于10,否则提示为无效输入
时间: 2024-10-14 18:03:35 浏览: 26
在Java中,我们可以创建一个名为`Book`的自定义类来封装图书的信息和操作。这个类会包含两个私有变量(属性):`title`表示书名,`price`表示价格,并通过getter和setter方法来访问和修改这些值。同时,我们会添加一些验证逻辑来确保价格大于10。
```java
public class Book {
// 私有属性
private String title;
private double price;
// 构造函数
public Book(String title, double price) {
setTitle(title);
if (price > 10) {
this.price = price;
} else {
throw new IllegalArgumentException("Price must be greater than 10");
}
}
// getter and setter methods for encapsulation
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public double getPrice() {
return price;
}
// 用于信息介绍的方法
public void introduce() {
System.out.println("书名: " + title + ", 价格: " + price);
}
// 测试
public static void main(String[] args) {
try {
Book book = new Book("Effective Java", 15.99);
book.introduce();
} catch (IllegalArgumentException e) {
System.out.println(e.getMessage());
}
}
}
```
在这个例子中,我们实现了封装原则,因为属性(如`title`和`price`)是私有的,只能通过公共方法来访问。如果试图设置的价格小于或等于10,`setPrice()`方法将抛出异常,避免了无效的输入。
阅读全文