1)要求账户属性是int型,名称是String型,作者是String型,价格是double,
请合理进行封装。
2)在Book类,添加toString方法,要求返回图书信息字符串,使用\t隔开各信息
3)要求定义一个图书馆Library 类,在图书馆类中添加一个集合用于保存多本图书
4)在图书馆类中要求能够新增图书
5)在图书馆类中要求可以查看所有添加过的图书

先定义Book类

public class Book {private int id;private String name;private String author;private int price;Book(int id, String name, String author, int price) {this.id = id;this.name = name;this.author = author;this.price = price;}public String toString() {return id+"\t"+name+"\t"+author+"\t"+price;}
/*public boolean equals(Object obj) {Book bk=(Book) obj;boolean b=this.id==(bk.id)&&this.name.equals(bk.author);System.out.println(b);return b;}
*/public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public int getPrice() {return price;}public void setPrice(int price) {this.price = price;}

在定义Library类

public class Library {public static void main(String[] args) {ArrayList list=new ArrayList();Scanner sc=new Scanner(System.in);//String ps="是";System.out.println("请选择是否输入你想添加的图书馆信息");boolean p;while ( p=sc.next().equals("是")) {System.out.println("请先输入账号id");int id = sc.nextInt();System.out.println("请先输入借书人姓名");String name = sc.next();System.out.println("请先输入书的作者");String author = sc.next();System.out.println("请先输入图书价格");int price = sc.nextInt();System.out.println("图书添加成功");System.out.println("请您决定是否继续添加");Book bk=new Book(id,name,author,price);list.add(bk);}System.out.println();System.out.println("查看图书信息");for (int i = 0; i < list.size(); i++) {System.out.println(list.get(i));}}

定义图书类Book,具有属性账号id,铭name.作者author和价格price,在创建图书对象时要求通过构造器进行创建,- -次性将四个属性全部赋值相关推荐

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

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

  2. c++课后题,声明一个银行账户类Account,该类有账号(id) ……………………

    头文件名: #include<iostream> #include<string>using namespace std;class Account {public://(yo ...

  3. javaScript 对象添加属性和创建js对象的方式(以及理解:“无法给构造函数添加新的属性“)

    1.javaScript 对象想要添加属性,非常简单 (1)直接添加,使用语法:objectName.propertyName 添加属性. 举例: var person = new Object(); ...

  4. 定义一个图书类Book

    /*** 定义一个图书类Book* 属性包括:书名name(String类型).作者author(String类型).单价price(double类型).数量amount(int类型),并且所有属性为 ...

  5. java用构造方法定义book类_JAVA基础学习之路(三)类定义及构造方法

    类的定义及使用 一,类的定义 classBook {//定义一个类intprice;//定义一个属性intnum;public static int getMonney(int price, intn ...

  6. ES6中定义的类和对象

    类的基本定义和生成实例: // 类的基本定义和生成实例class Parent{ //定义一个类constructor(name='xiaxaioxian'){this.name= name;}} / ...

  7. java编写定义圆类和圆柱体类,Java程序基础编程基础

    1.在屏幕上输出"你好" //Programmer name Helloword.java public class Helloword { public static void ...

  8. [置顶] 深入浅出Javascript(三)创建自定义对象以及属性、方法

    怎么样创建一个对象? 利用Object创建自定义对象 JavaScript能够自定义对象来扩展程序的功能,不仅如此,它还能扩展JavaScript提供的内置对象,新增内置对象的属性或方法 例如下面代码 ...

  9. 【Groovy】Groovy 脚本调用 ( Groovy 类中调用 Groovy 脚本 | 创建 GroovyShell 对象并执行 Groovy 脚本 | 完整代码示例 )

    文章目录 一.Groovy 类中调用 Groovy 脚本 1.创建 GroovyShell 对象并执行 Groovy 脚本 2.代码示例 二.完整代码示例 1.调用者 Groovy 脚本的类 2.被调 ...

  10. 四种属性范围(重点)

    3.1.四种属性范围(重点)        所谓的属性范围,就是指一个对象可以跨多少个 JSP 页面之后可以继续使用. 3.1.1.操作方法        在整个 JAVA WEB 中属性操作使用如下 ...

最新文章

  1. 管理到底是“管人”还是“管事”,百分之九十的人理解有问题
  2. Dispatcher.Invoke方法
  3. Git 经常使用命令总结
  4. python os.walk()
  5. 不用现有方法,把string转换成int型[C#]
  6. 实现歌词效果自动滚动_只需五步,专业Pr软件实现视频歌词渐变色效果,你学会了吗?...
  7. HTML 禁止数字因被自动识别为手机号,而被添加拨号链接样式
  8. RabbitMQ——事务
  9. unity DOTS的学习总结之Job System
  10. 雷观(二):当今时代最须要6项能力
  11. day078_鼠标动起来
  12. Docker系列(8) Docker网络(3)-- 单机Docker网络配置
  13. php多合一安装包,DOXCX多合一小程序系统Sass平台源码分享
  14. 鸿蒙系统卡顿解决方法,鸿蒙比安卓性能提升60%,还解决了安卓卡顿的问题,谷歌压力山大...
  15. Linux下GPT分区,gdisk修复损坏的分区表
  16. 不可错过的年度AI学术盛会 2021新一代人工智能院士高峰论坛暨启智开发者大会议程惊喜发布~
  17. 郑小林——“浙大系”隐私计算产学研创新先锋
  18. 华为荣耀5C真机调试android过程遇到的问题
  19. 如何drop有default constrain…
  20. ffmpeg如何进行高清图片转码

热门文章

  1. android wine教程_如何在 Android 上借助 Wine 来运行 Apps
  2. 证书错误 导航已阻止 无法跳转 最终解决
  3. qq拼音 搜狗拼音的对比
  4. Python语言程序设计基础 第二版(嵩天著)课后答案第五章
  5. 天南星科系统发育及全基因组复制事件的研究取得新进展
  6. duilib隐藏(显示)任务栏图标方式
  7. 基于vue transform: translateY 上下滑动实现
  8. WPS2019 装完图片默认打开方式改了, 改成了 WPS 打开
  9. eleme后台的el-form表单分为左右两边放数据 :inline=true
  10. 那一年岳云鹏14岁,郭德纲26岁