圥忈.425 2022-03-30 14:47 采纳率: 85.7%
浏览 119
已结题

java-图书管理系统

定义一个图书类Book,其成员变量有:书名、书号ID、作者、出版社、出版时间、状态;包含的方法:构造方法、所有属性的getter方法、借出和归还方法,状态有“在馆”和“外借”两种状态,当借出时,状态变为“外借”,归还时变为“在馆”;
要求:
(1)书号ID采用动态增长的方法生成,从1开始,采用四位,如0001、0002...
(2)单独定义测试类,创建书的对象,并输出书的基本信息(书名、书号ID、作者、出版社、出版时间、状态);
(3)对某本书进行借出和归还操作,并查看书的状态;

  • 写回答

1条回答 默认 最新

  • 嘉祐-小萝卜算子 2022-03-30 15:40
    关注
    
    
    public class TestApp {
     
        public static void main(String[] args) {
            //单独定义测试类,创建书的对象,并输出书的基本信息(书名、书号ID、作者、出版社、出版时间、状态);
            Book book1=new Book("三国演义","罗贯中","文学出版社","2020年","在馆");
            System.out.println(book1.toString());
            //对某本书进行借出和归还操作,并查看书的状态;
            book1.lend();
            System.out.println(book1.toString());
            book1.back();
            System.out.println(book1.toString());
            //书号ID采用动态增长的方法生成,从1开始,采用四位,如0001、0002
            System.out.println("====================下面为演示书号ID采用动态增长的方法生成==========================");
            Book book2=new Book("西游记","吴承恩","文学出版社","2021年","在馆");
            System.out.println(book2.toString());
            Book book3=new Book("西","吴","文学出版","2022年","在馆");
            System.out.println(book3.toString());
        }
        
    }
    
    class Book {
    
        public static int id;
    
        public static String getId(){
            id++;
            return  (id<10?"000":(id<100?"00":"0"))+id;
        }
    
        //定义一个图书类Book,其成员变量有:书名、书号ID、作者、出版社、出版时间、状态;
        private String bookName;
        private String bookId;
        private String author;
        private String press;
        private String pressTime;
        private String status;
    
        //构造方法、所有属性的getter方法
        public Book() {
        }
    
        public Book(String bookName, String author, String press, String pressTime, String status) {
            this.bookName = bookName;
            this.author = author;
            this.press = press;
            this.pressTime = pressTime;
            this.status = status;
            this.bookId=getId();
        }
    
        public String getBookName() {
            return bookName;
        }
    
        public String getBookId() {
            return bookId;
        }
    
        public String getAuthor() {
            return author;
        }
    
        public String getPress() {
            return press;
        }
    
        public String getPressTime() {
            return pressTime;
        }
    
        public String getStatus() {
            return status;
        }
    
        //借出和归还方法
        //当借出时,状态变为“外借”
        public void lend(){
            this.status="外借";
        }
    
        //归还时变为“在馆”;
        public void back(){
            this.status="在馆";
        }
    
      @Override
        public String toString() {
            return "书籍信息{" +
                    "书名='" + bookName + '\'' +
                    ", 书号ID='" + bookId + '\'' +
                    ", 作者='" + author + '\'' +
                    ", 出版社='" + press + '\'' +
                    ", 出版时间='" + pressTime + '\'' +
                    ", 状态='" + status + '\'' +
                    '}';
        }
    
    }
    
    

    看看是这个效果吗

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月5日
  • 创建了问题 3月30日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来