首页 课程 师资 教程 报名

Java图书管理系统基本架构代码

  • 2022-04-22 10:13:32
  • 1287次 动力节点

动力节点小编来告诉大家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){
    }
}

 

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交