了解上节有关封装的知识后,本节通过完整的例子再次实现封装。要求编写表示图书的 Book 类,实现以下需求:
基本信息包括图书名称(bookName)、总页数(pagelbtalNum),其中页数不能少于 200 页,否则输出错误信息,并赋予默认值 200。
为各个属性设置赋值和取值方法。
具有 details() 方法,该方法在控制台输出每本图书的名称和总页数。

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

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

public class Book {private String bookName; // 图书名称public String getBookName() {return bookName;}public void setBookName(String bookName) {this.bookName = bookName;}
}

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

private int bookTotalNum; // 图书总页数
public int getBookTotaiNum() {return bookTotalNum;
}
public void setBookTotalNum(int bookTotalNum) {if (bookTotalNum < 200) {System.out.println(this.bookName + "这本书的页数不能少于 200 页");this.bookTotalNum = 200;} else {this.bookTotalNum = bookTotalNum;}
}

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

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

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

public class BookTest {public static void main(String[] args) {Book book1 = new Book();book1.setBookName("《红与黑》");book1.setBookTotalNum(190);book1.details();System.out.println("************************************");Book book2 = new Book();book2.setBookName("《格林童话》");book2.setBookTotalNum(520);book2.details();}
}

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

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

1.2 实例:封装图书信息类相关推荐

  1. Java封装图书信息类

    封装示例编写表示图书的 Book 类,实现以下需求: 基本信息包括图书名称(bookName).总页数(pagelbtalNum),其中页数不能少于 200 页,否则输出错误信息,并赋予默认值 200 ...

  2. 用java定义图书book类_Java封装图书信息类

    了解上节有关封装的知识后,本节通过完整的例子再次实现封装.要求编写表示图书的 Book 类,实现以下需求: 基本信息包括图书名称(bookName).总页数(pagelbtalNum),其中页数不能少 ...

  3. 初识数据结构:链表实现图书信息管理系统(C语言,仅供参考)

    目录 1.创建表结构 2.创建表 3.打印链表 4.查找功能的实现 5.插入功能的实现 6.删除功能的实现 7.修改功能的实现 8.计数功能的实现 9.排序功能的实现 10.封装图书信息管理系统 1. ...

  4. 在当当买了python怎么下载源代码-Python爬取当当、京东、亚马逊图书信息代码实例...

    注:1.本程序采用MSSQLserver数据库存储,请运行程序前手动修改程序开头处的数据库链接信息 2.需要bs4.requests.pymssql库支持 3.支持多线程 from bs4 impor ...

  5. 1.11实例:保存图书信息

    利用输出流我们可以将一些数据保存到磁盘文件中,利用输入流可以读取磁盘文件中的内容.本节将综合使用文件输入/输出流完成存储图书并将图书信息再读取出来的功能. 每到学校开学季都会新进一批图书教材,需要将这 ...

  6. 出版社、作者和图书 出版社类:属性:编号,出版社名称,地址 方法:显示出版社的信息 构造:无参构造方法、有参构造方法 作者类:属性:作者的编号,姓名 方法:显

    import java.util.Scanner;public class press {//出版社类 /* * 出版社.作者和图书 出版社类:属性:编号,出版社名称,地址 方法:显示出版社的信息 构 ...

  7. python爬虫如何爬亚马逊_Python爬取当当、京东、亚马逊图书信息代码实例

    注:1.本程序采用MSSQLserver数据库存储,请运行程序前手动修改程序开头处的数据库链接信息 2.需要bs4.requests.pymssql库支持 3.支持多线程 from bs4 impor ...

  8. python爬取京东书籍_Python爬取当当、京东、亚马逊图书信息代码实例

    注:1.本程序采用MSSQLserver数据库存储,请运行程序前手动修改程序开头处的数据库链接信息 2.需要bs4.requests.pymssql库支持 3.支持多线程 from bs4 impor ...

  9. python测试题:请设计一个图书类Book,包括书号(num),书名(name),出版日期(Date) 从键盘输入图书册数n,接着输入n个图书信息,按书名排序输出所有图书信息

    题目: 请设计一个图书类Book,包括书号(num),书名(name),出版日期(Date) 从键盘输入图书册数n,接着输入n个图书信息,按书名排序输出所有图书信息 思路: 首先肯定是先创建一个boo ...

最新文章

  1. 单链表-单链表拆分为两个线性表(尾插法+尾插法)
  2. 黑洞是如何被拍照的?
  3. matlab脑电信号处理,基于matlab的脑电信号处理
  4. shell 获取ora报错信息_ORA-04030: 在尝试分配...字节(...)时进程内存不足的原因分析...
  5. 关于996,我想说的 - 人在高潮享受成就,人在低潮享受人生
  6. 计算机网络课程设计之TELNET 终端设计与实现
  7. 类支付宝微信密码输入框
  8. 6 redis 编译失败_Redis(NoSQL数据库)基础篇
  9. 分布式发布订阅模型网络的实现有哪些
  10. android之统一字体大小
  11. DotNet开发的微商分销系统源码,微信三级分销系统源码
  12. Kepware软件使用手册
  13. Telerik UI for Xamarin使用教程 - AndroidX使用指南
  14. 推动5G+北斗高精度定位系统更好赋能千行百业
  15. EFResume - 一个普通的 Swift 简历模板
  16. 心理学-墨菲定律 个人笔记
  17. 中台建设利器-SPI插件机制
  18. python读取文件夹下所有图片并重命名_python 对文件夹下图片 批量重命名
  19. ValueError: Solver lbfgs supports only ‘l2‘ or ‘none‘ penalties, got l1 penalty.
  20. js 小写金额转大写

热门文章

  1. Python之日志处理(logging模块)
  2. HDU-3507Print Article 斜率优化DP
  3. python之web开发“三剑客”
  4. 单例Singleton
  5. ubuntu14.04LS中安装sogouPingyin
  6. Servlet3.0学习总结(三)——基于Servlet3.0的文件上传
  7. hdu 3788 字符串
  8. 《YES!B/S!》博客文章导读索引(20080612更新)
  9. CentOS 7安装 ifconfig 管理命令
  10. Qt中内存泄露和半自动内存管理