Java——简易图书管理系统

2024-06-04 3088阅读

1.功能介绍

本个图书管理系统的功能主要分为两个方面:

1.管理员的:查找图书,新增图书,删除图书,显示图书,退出系统

2.普通用户的:查找图书,借阅图书,归还图书,显示图书,退出系统

2.图书管理系统的整体框架

Java——简易图书管理系统 第1张

 3.搭框架

3.1对一本书进行处理

1.将一本书和书架分别写成同一个包中的不同类

2.对一本书的信息和方法进行封装(写书的构造方法时,不用写是否借出的信息,因为默认是false)

3.重写toString方法

    public String toString() {
        return "Book{" +
                "书名:'" + name + '\'' +
                ", 作者:'" + author + '\'' +
                ", 类型:'" + type + '\'' +
                ", 价格:" + price +
                ", 是否借出:" + (isBrrowed?"已借出":"未借出") +
                '}';
    }

注意:重写toString方法时,要对是否借出的信息进行判断,如果是true就返回字符串“已借出”,false返回字符串“未借出”

3.2对书架进行处理

1.定义一个书架(用数组存储每一本书,数组的类型为Book,书架的默认长度设为10),

  private Book[]books=new Book[10];

2.调用构造函数对书架进行初始化(默认放3本书进去)

    public BookList(){
    this.books[0]=new Book("三国演义","罗贯中","小说",99);
    this.books[1]=new Book("西游记","吴承恩","小说",149);
    this.books[2]=new Book("红楼梦","曹雪芹","小说",129);
    }

3.设置一个变量useSize来记录当前的数量

4.对书架这个类进行封装

注意:

对书架调用getter和setter方法时,我们获取的是书架这个数组里面的书,而不是书架这个数组

   public Book getBooks(int pos) {
        return books[pos];
    }
    public void setBooks(Book book,int pos) {
        this.books[pos] = book;
    }

3.3对各种方法的实现

不管是管理员还是普通用户,实现的功能几乎都是对书架这个数组的增删查改,我们实现一个工作的接口,让每一个功能类都实现这个接口,重写接口里面的方法,从而方便后续使用接口类型的数组管理这些方法

Java——简易图书管理系统 第2张

注意:在退出系统这个功能里面,我们好像没有用到书架的数组吧,但为什么也要实现IFunctiong这个接口呢?

答:在后面我们是将每一个功能的类作为IFunction这个接口类型的数组的元素,通过数组去调用每一个功能,实现了功能调用的统一性

思考:

我们的删除图书,查找图书,以及借阅和归还图书是不是都需要实现一个查找功能,有没有方法方法简化一下代码啊?

我们可以实现一个接口,接口里面实现一个查找的方法,然后再用需要查找方法的类实现这个接口就行了

public interface IFind {
    public static int Find(BookList bookList, String name){
        for (int i = 0; i 

    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]