Java封装图书信息类

了解上节有关封装的知识后,本节通过完整的例子再次实现封装。要求编写表示图书的 Book 类,实现以下需求:

  • 基本信息包括图书名称(bookName)、总页数(pagelbtalNum),其中页数不能少于 200 页,否则输出错误信息,并赋予默认值 200。
  • 为各个属性设置赋值和取值方法。
  • 具有 details() 方法,该方法在控制台输出每本图书的名称和总页数。


编写 BookTest 测试类,为 Book 对象的属性赋予初始值,并调用 details() 方法输出详细信息。根据上面的描述添加代码,步骤如下。

(1) 创建 Book 类,首先向该类添加 bookName 变量,并封装该变量。代码如下:

 
  1. private String bookName; //图书名称
  2. public String getBookName()
  3. {
  4. return bookName;
  5. }
  6. public void setBookName(String bookName)
  7. {
  8. this.bookName=bookName;
  9. }


(2) 在 Book 类中添加 bookTotalNum 变量,并封装该变量,在封装的 setter 方法中判断页数的值是否小于 200。代码如下:

 
  1. private int bookTotalNum; //图书总页数
  2. public int getBookTotaiNum()
  3. {
  4. return bookTotalNum;
  5. }
  6. public void setBookTotalNum(int bookTotalNum)
  7. {
  8. if(bookTotalNum<200)
  9. {
  10. System.out.println(this.bookName+"这本书的页数不能少于 200 页");
  11. this.bookTotalNum=200;
  12. }
  13. else
  14. {
  15. this.bookTotalNum=bookTotalNum;
  16. }
  17. }


(3) 在 Book 类中添加公有的 details() 方法,输出图书的名称和总页数。代码如下:

 
  1. public void details()
  2. {
  3. System.out.println(this.bookName+"这本书的总页数是:"+this.bookTotalNum);
  4. }


(4) 创建 BookTest 测试类,在该类的 main() 方法中创建 Book 类的两个实例对象,然后分别为类中的两个属性赋值,最后调用 details() 方法输出信息。代码如下:

 
  1. public class BookTest
  2. {
  3. public static void main(String[] args)
  4. {
  5. Book book1=new Book();
  6. book1.setBookName("《红与黑》");
  7. book1.setBookTotalNum(190);
  8. book1.details();
  9. System.out.println("************************************");
  10. Book book2=new Book();
  11. book2.setBookName("《格林童话》");
  12. book2.setBookTotalNum(520);
  13. book2.details();
  14. }
  15. }


(5) 执行上述代码,输出结果如下:

《红与黑》这本书的页数不能少于 200 页
《红与黑》这本书的总页数是:200
************************************
《格林童话》这本书的总页数是:520
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值