XDUBookManageSystem
2021-11-16 13:02:55 2 举报
程序设计A大作业-图书管理系统的第一版面向对象设计
作者其他创作
大纲/内容
BorrowBookSheet
int ReaderIDint BookID
这个枚举用来帮助简少库存管理员的方法数量,使得容易抽象处理这类表单的公共部分代码
存储项目StorageItem
+int bookID+int money//书的价值金额,目前只对应购入价格+int[] notReturnedBookSheetIDs//所有借出且未归还单号+int occupiedNum//本图书目前合法拥有量+int borrowedNum//本图书目前借出的总数量+int storedNum=>occupiedNum-lendNum
IDEncoder[单例]
+String encode(int[] ids)+int[] decode(String s)
DealSheet[抽象类]
int ID//单号String data//日期(2021/11/16)
+int getChangedBookNum()//这个方法必须在每个子类实现,表明此次表单造成该书的数量变化,正表示库存增长,负表示库存削减+SheetType getSheetType()
前台经理是读者管理员和库存管理员的协调者,通过两个管理员的方法获得需要的信息并部署到界面上,属于前端和后端主要接口。特别需要注意:前台经理需要提供构造不同DealSheet的方法,如果是借书则需要留意库存管理员submit方法的返回值,如果库中无书会返回false,此时便不可再将此表单交给读者管理员,
ReturnBookSheet
读者管理员ReaderManager[单例]
-Reader[] readers
+checkReaderInfo(int readerID)+mergeNewSheet(DealSheet newSheet)
Reader
+int ID+String name+String workPlace+String homeAddress+int[] borrowRecord//所有填过的借书单ID+int[] returnRecord//所有填过的还书单ID
前台经理DeskManager[单例]
-BookStorageManager storageManager-ReaderManager readerManager
LogoutBookSheet
int bookIDint logoutNum
SheetType[枚举]
BuyBookSheetLogoutBookSheetReturnBookSheetBorrowBookSheet
BuyBookSheet
int bookIDfloat singleCostint buyNum
库存与表单管理员BookStorageManager[单例]
-StorageItem[] items-BuyBookSheet[] buySheets-LogoutBookSheet[] logoutSheets-BorrowBookSheet[] borrowSheets-ReturnBookSheet[] returnSheets
Book
+int ID+String name+String author+String ISBN//需求没要求这一项,所以构造时直接缺省就可以了
收藏
0 条评论
下一页
为你推荐
查看更多
抱歉,暂无相关内容