目录
一、该图书管理系统涉及Java的知识点,如下:
- 数组的增删查
- 抽象类
- 接口
- 面向对象的封装、继承和多态
二、该图书管理系统包含的功能,如下:
- 图书管理系统的使用人群分为两种:①管理人员,②普通用户
- 具体实现:抽象类的继承
User类(父类):
public abstract class User {
protected String name;
protected IOperation[] iOperations;
public User(String name){
this.name=name;
}
public abstract int menu();
public void doWork(int choice, BooklList booklList){
iOperations[choice].work(booklList);
}
}
AdminUser类(管理员)
public class AdminUser extends User {
public AdminUser(String name){
super(name);
this.iOperations=new IOperation[] {
new ExitOperation(),
new FindOperation(),
new AddOperation(),
new DelOperation(),
new DisplayOperation()
};
}
public int menu(){
System.out.println("========管理员菜单========");
System.out.println("hello "+this.name +"欢迎使用图书管理系统");
System.out.println("1.查找图书");
System.out.println("2.新增图书");
System.out.println("3.删除图书");
System.out.println("4.显示图书");
System.out.println("0.退出系统");
System.out.println("==============================");
Scanner scanner=new Scanner(System.in);
int choice=scanner.nextInt();
return choice;
}
}
NormalUser类(普通用户类)
public class NormalUser extends User {
public NormalUser(String name){
super(name);
this.iOperations=new IOperation[]{
new ExitOperation(),
new FindOperation(),
new BorrowOperation(),
new ReturnOperation()
};
}
public int menu(){
System.out.println("========普通用户菜单========");
System.out.println("hello "+this.name +"欢迎使用图书管理系统");
System.out.println("1.查找图书