本文主要是介绍Java面向对象总结性项目 之 图书馆管理代码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Java面向对象总结性项目 之 图书馆管理代码
- 简介
- 核心需求
- 类的设计
- 架构
- 创建图书相关的类
- 创建书架相关的类
- 创建用户相关的类
- 对于管理员
- 对于用户
- 创建 Main 类和 main 方法, 搭建整体逻辑
- 实现具体的每个 Operation
- 该Java程序运行结果
- 用户端
- 管理员
简介
利用前面所学的知识点:类,抽象类,封装,继承,多态,接口等进行的一个简单的代码练习。
核心需求
- 简单的登录功能
- 对于管理员,实现以下功能:
查找书籍
增加书籍
删除书籍
显示所有图书
退出系统 - 对于用户,实现以下功能:
查询书籍
借阅书籍
归还书籍
退出系统
类的设计
架构
该Java程序架构如下
创建图书相关的类
package book;public class Book {private String name;//书名private String author;//作者private int price;//价格private String type;//类型private boolean status;//状态public Book(String name, String author, int price, String type) {this.name = name;this.author = author;this.price = price;this.type = type;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAuthor() {return author;}public void setAuthor(String author) {this.author = author;}public int getPrice() {return price;}public void setPrice(int price) {this.price = price;}public String getType() {return type;}public void setType(String type) {this.type = type;}public boolean isStatus() {return status;}public void setStatus(boolean status) {this.status = status;}@Overridepublic String toString() {return "Book{" +"name='" + name + '\'' +", author='" + author + '\'' +", price=" + price +", type='" + type + '\'' +", status=" + /*status +*/( (status == true)?"‘借出’":"‘未借出’")+'}';}
}
创建书架相关的类
package book;public class BookList {private Book[] books;private int usedSize;public BookList() {this.books = new Book[10];books[0] = new Book("三国演义","罗贯中",56,"小说");books[1] = new Book("水浒传","施耐庵",58,"小说");books[2] = new Book("西游记","吴承恩",66,"小说");books[3] = new Book("红楼梦","曹雪芹",46,"小说");this.usedSize = 4;}//尾插法public void setBooks(int pos,Book book){this.books[pos] = book;}public Book getBook(int pos){return this.books[pos];}public int getUsedSize() {return usedSize;}public void setUsedSize(int usedSize) {this.usedSize = usedSize;}
}
创建用户相关的类
package user;import book.BookList;
import operation.IOperation;public abstract class User {public String name;public IOperation[] operations;public User(String name){this.name = name;}public abstract int menu();public void doOperation(int choice, BookList bookList){this.operations[choice].work(bookList
这篇关于Java面向对象总结性项目 之 图书馆管理代码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!