更新時間:2022-04-22 10:13:32 來源:動力節點 瀏覽1770次
動力節點小編來告訴大家Java圖書管理系統基本架構代碼。
書類:
包 book_management;
//圖書實體類
公共課本{
//標題
私人字符串書名;
//作者
私人字符串作者;
//價格
私人雙倍價格;
//圖書分類
私有字符串類型;
//借閱狀態:默認為false
私有布爾 isBorrowed;
public Book(String bookName,String author,double price,String type){
this.bookName = 書名;
this.author = 作者;
this.price = 價格;
this.type = 類型;
}
//只有需要修改的屬性才需要提供setter-價格、類型和借貸狀態
公共無效 setPrice(雙倍價格){
this.price = 價格;
}
公共無效 setType(字符串類型){
this.type = 類型;
}
公共無效 setBorrowed(布爾借用){
isBorrowed = 借來的;
}
公共字符串 getBookName(){
返回書名;
}
公共字符串 getAuthor(){
返回作者;
}
公共雙 getPrice(){
退貨價格;
}
公共字符串 getType(){
返回類型;
}
公共布爾 isBorrowed(){
返回是借來的;
}
@覆蓋
公共字符串 toString() {
返回 "書{" +
"書名='" + 書名 + '\'' +
", 作者='" + 作者 + '\'' +
", 價格=" + 價格 +
", type='" + 類型 + '\'' +
", isBorrowed=" + isBorrowed +
'}';
}
}
bookList 類:
包 book_management;
進口來.B;
導入 java.util.ArrayList;
導入 java.util.List;
//書架
公共類書單{
// Books 存儲當前書架中的所有書籍,每個 Book 對象都是一個 Book 的實體
私有靜態 List<Book> books = new ArrayList<>();
// booksName 存儲所有書名——查詢書等通過書名操作
私有靜態列表<String> bookName = new ArrayList<>();
// 初始化books和booksName,默認將四大名著放入書架
// 使用靜態代碼塊初始化靜態變量
靜止的 {
books.add(new Book("西游記","吳承恩",99.99,"小說"));
books.add(new Book("紅樓夢","曹雪芹",108.9,"小說"));
books.add(new Book("水滸傳","施耐安",199.89,"小說"));
books.add(new Book(《三國志》,"羅冠中",145.39,"小說"));
bookName.add("西游記");
bookName.add("紅樓夢");
bookName.add("水滸傳");
bookName.add("三國志");
}
公共無效顯示書(){
對于(書籍書籍:書籍){
System.out.println(book);
}
}
公共布爾包含(字符串書名){
返回 BookList.bookName.contains(booksName);
}
公共無效添加(書本){
書籍。添加(書籍);
bookName.add(book.getBookName());
}
}
主要方法:
包 book_management;
導入 java.util.Scanner;
//整個程序的入口
公共類主要{
私人靜態掃描儀掃描儀=新掃描儀(System.in);
公共靜態無效主要(字符串[]參數){
用戶用戶=登錄();
BookList bookList = new BookList();
而(真){
int 選擇 = user.menu();
如果(選擇 == -1){
System.out.println("再見!");
休息;
}
user.doOperation(choice,bookList);
}
}
私人靜態用戶登錄(){
System.out.println("請輸入用戶名:");
字符串名稱 =scanner.next();
System.out.println("請選擇您的角色。1為普通用戶,0為管理員");
int 選擇=scanner.nextInt();
如果(選擇 == 1){
返回新的普通用戶(名稱);
}
返回新的管理員用戶(名稱);
}
}
用戶等級:
包 book_management;
//用戶類-抽象類
//不知道是普通用戶還是管理員
公共抽象類用戶{
//用戶名
受保護的字符串名稱;
//授權操作的方法
受保護的 IOperation[] 操作;
// 菜單。只有特定的子類知道菜單長什么樣~~
公共抽象整數菜單();
公共無效doOperation(int選擇,BookList bookList){
操作[選擇 - 1].work(bookList);
}
}
相關操作類框架代碼:
包 book_management;
導入 java.util.Scanner;
//書架操作界面
// 增刪改查-借書-還書
// 接口中只有全局常量和抽象方法
公共接口 IOperation {
// 全局常量,由所有接口的子類共享
// static + final co 修改
掃描儀掃描儀=新掃描儀(System.in);
//在對應的書架類中操作
無效工作(BookList bookList);
}
//添加書籍
公共類 AddOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
System.out.println("正在添加書籍...");
}
}
//借閱圖書
公共類 BorrowOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
}
}
//刪除書籍
公共類 DeleteOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
}
}
//顯示所有書籍
公共類 DisplayAllBooks 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
System.out.println("你現在要做的是查看所有書籍!");
bookList.displayBooks();
}
}
//找書
公共類 FindOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
}
}
//還書
公共類 ReturnOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
}
}
//更新書籍
公共類 UpdateOperation 實現 IOperation{
@覆蓋
公共無效工作(BookList bookList){
}
}
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習