javase小项目--图书管理系统

前面我们已经学习到了javase的基本语法结构-继承,多态,接口,接下来就让我们大家一起来利用这些来手动实现一个小项目——简洁的图书管理系统

目录

1.思路

1.book类

1.book

2.booklist

2.user类

user

AdminUser

NormalUser

3.ioperation类

Ioperation(方法的统一接口)

AddOperation

BorrowOperation

DelOperation

ExitOperation

FindOperation

ReturnOperation

ShowOperation

总结


1.思路

如图所示

我们这个系统1.首先需要输入姓名,2.然后要通过不同用户的选择来展现不同的菜单,3.然后再根据菜单来进行增删改查,显示等

我们前面学习并了解了JAVA是一个面向对象的语言,那我们现在就可以粗略的将图书管理分为三个大体的类:书,用户,操作,于是我们可以在idea上先建设三个软件包,分别表示book,user,iopration然后单独创建一个Main函数

1.book类

 book类中我们可以再分为两类book以及booklist,book负责存放书籍的各种信息,booklist负责充当书架功能,将书籍的各种信息存放下来

1.book

package book;

public class Book {
    private String bookname;//书名
    private String autor;//作者
    private double price;//价格
    private String type;//类型
    private boolean isBorrowed;//是否借出

    public Book(String name, String autor, double price, String type) {
        this.bookname = name;
        this.autor = autor;
        this.price = price;
        this.type = type;
    }

    public String getName() {
        return bookname;
    }

    public void setName(String name) {
        this.bookname = name;
    }

    public String getAutor() {
        return autor;
    }

    public void setAutor(String autor) {
        this.autor = autor;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    @Override
    public String toString() {
        return "BookList{" +
                "name='" + bookname + '\'' +
                ", autor='" + autor + '\'' +
                ", price=" + price +
                ", type='" + type + '\'' +
                ", isBorrowed=" + isBorrowed +
                '}';
    }

}

2.booklist

将book类组成一个数组存储起来,而且可以初始化书架,将书架上原始的书先存放进去

ackage book;

public class BookList {
    private Book[] books = new Book[10];
    private int  useSize;

    public BookList(){
        this.books[0] = new Book("西游记","吴承恩",19.9,"小说");
    }
}

初步解决好book类后我们就可以来处理用户类了

2.user类

首先我们发现当这个系统输入完名字后就会让我们选择用户还是管理员

由于不同的身份有相同的效果,且有些方法虽然名字相同但是实际上产生的效果并不相同

所以我们可以利用抽象类来让管理员类和用户类来进行继承操作

于是我们将user软件包分为三类

1.(父类)user

2.(管理员类) AdminUser

3.(用户类)NormalUser

然后我们就可以依据需求来写代码了

user

然后我们就可以根据管理员菜单和用户菜单来分别为其写代码了

AdminUser

public class AdminUser extends User{
    public AdminUser(String name) {
        super(name);
    }
    //管理员界面
    public  int menu(){
        System.out.println("
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值