java面向对象设计大作业第二阶段:图书馆查书、借书、还书

1.系统功能框架图:





2.UML类图:

3.类的说明:

(1)LibraryCentre类:

      主要属性:static List<Book> books;:用以存放图书馆中藏书,用List声明,ArrayList实例化,方便进行对图书馆中藏书的添加操作和删除操作。
      主要方法:public List<Book> findBookByName(String name):通过书籍名称查找书籍,返回一个list列表,可返回名称中包含查找关键字的所有书籍;public Book findBookByID(String id):通过书籍ID查找书籍,因为书籍ID是唯一的,所以至多返回一个Book类;public boolean borrowBook(Book book,User user):通过已查询到书籍变量和用户借书证号进行借书操作,在该方法中对书籍的status和user进行修改;public int returnBook(String returnBookID, String userLibCard):通过书籍ID和用户的借书证号进行书籍的归还,在该方法中对书籍的status和user进行修改。

(2)User类:

      主要属性:String libCard;:用户的借书证号;static Map<String,Book> card = new TreeMap<>();:用户的借书情况信息,用Map声明,TreeMap实例化,方便以后数据类型变更时的修改,其中String用以存放借书时间。
      主要方法:public int checkBorrowedBook():用以判断用户是否有借阅书籍,用户未借阅任何书籍时返回0,否则返回1.

4.运行结果:

(1)菜单展示

(2)查书

(3)借书

(4)还书

5.特色:

(1)使用Git管理代码:Git链接

(2)使用一对多、多对一的类的关系:一个User可以包含多个Book,而一个Book只能包含一个User。


posted @ 2020-12-09 13:06  Kevin。  阅读(538)  评论(0编辑  收藏  举报