javaは簡単な図書管理システムを実現します。


本論文の実例は、Javaが簡単な図書管理システムを実現するための具体的なコードを共有しています。
一、プロジェクト分布

ブッククラス:本の属性(書名、著者、価格、分類、状態)を定義し、属性のget、set方法を書いています。
Library類:登録関数(1、一般ユーザー、2、管理者、3、ログアウトシステム)を書きました。
Person類:定義した人の属性(名前、性別、年齢)と属性のget、set方法を書いて、いくつかの本を定義しました。
operateインターフェース:操作のインターフェース、操作方法:問い合わせ/閲覧、削除/貸し出し、本のリストを表示する追加/返却
Root類:Person類を継承し、operate(閲覧、削除、追加、書籍リスト表示)インターフェースを実現しました。
Userクラス:Personクラスを継承し、operateインターフェースを実現しました。
Mainクラス:Mainのメイン関数はプロジェクト全体を開けます。
模型図:

声明:本プロジェクトは単なる対象向けの入門プロジェクトであり、対象、クラス、抽象類、インターフェース、継承、実現、配列および配列の操作、forサイクル、whileループ、switch文、if文などの基礎理論を身につける必要があります。
二、コード展示
1.Book類

public class Book {
 private String name; //  
 private String author; //  
 public double price; //  
 private String category; //  
 private boolean state; //    true-     false-   

 //            
 public Book(String name,String author,double price,String category,boolean state){
  this.author = author;
  this.name = name;
  this.price = price;
  this.category = category;
  this.state = state;
 }

 public Book() {  //  10  
  this(10);
 }
 public Book(int i) {
  Person.books = new Book[i];
 }

 //        
 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 double getPrice() {
  return price;
 }
 public void setPrice(double price) {
  this.price = price;
 }
 public String getCategory() {
  return category;
 }
 public void setCategory(String category) {
  this.category = category;
 }
 public boolean getState() {
  return state;
 }
 public void setState(boolean state) {
  this.state = state;
 }
}
2.Library類

import java.util.Scanner;

public class Library {
 Scanner sc = new Scanner(System.in);
 //    :            
 public void login() {
  int count = 0;
  Person p = null;
  while (count < 2) {
   System.out.println("===============jewel      ===============");
   System.out.println("      ! qq505791225"+"
"); System.out.println(" :1. 2. 3. "); int n = sc.nextInt(); // if (n == 3) { return; } switch (n) { case 1: System.out.println(" :"); String Uname = sc.next(); System.out.println(" :"); String Usex = sc.next(); System.out.println(" :"); int Uage = sc.nextInt(); p = new User(Uname,Usex,Uage); // System.out.println(" !"); System.out.println(" :"+" :" + p.getName() + " "+" :" + p.getSex() + " "+" "+ p.getAge()); // while (true) { System.out.println(" : 1. 2. 3. 4. 5. "); int i = sc.nextInt(); if (i == 5) { System.out.println(" !"); break; }else { p.operate(); // } } break; case 2: System.out.println(" :"); String Rname = sc.next(); System.out.println(" :"); String Rsex = sc.next(); System.out.println(" :"); int Rage = sc.nextInt(); p = new Root(Rname,Rsex,Rage);// System.out.println(" !"); System.out.println(" :"+" :" + p.getName() + " "+" :" + p.getSex() + " "+" " + p.getAge()); while (true) { System.out.println(" : 1. 2. 3. 4. 5. 6. "); int j = sc.nextInt(); if (j == 6) { System.out.println(" !"); break; }else{ p.operate();// } } break; } } } }
3.Person類(抽象類)

abstract class Person {
 public String name;
 public String sex;
 public int age;
 /**
  *      10   。(  3    buffer,      )
  */
 public static Book[] books = new Book[]{
   new Book("   ", "   ", 10, "  ", true),
   new Book("   ", "   ", 20, "  ", true),
   new Book("    ", "   ", 15, "  ", true),
   new Book("    ", "  ", 5, "  ", true),
   new Book("C   ", "   ", 35, "   ", true),
   new Book("Java    ", "   ", 55, "   ", true),
   new Book("   ", "  ", 15, "  ", true),
   new Book("      ", "  ", 5, "  ", true),
   new Book("       ", "  ", 35, "  ", true),
   new Book("  ", "  ", 36, "  ", true),
   new Book(),
   new Book(),
   new Book(),
 };

 public Person(String name, String sex, int age) {
  this.age = age;
  this.name = name;
  this.sex = sex;
 }

 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
 public String getSex() {
  return sex;
 }
 public void setSex(String sex) {
  this.sex = sex;
 }
 public int getAge() {
  return age;
 }
 public void setAge(int age) {
  this.age = age;
 }
 /**
  *           
  */
 public abstract void operate();
}
4.operateインターフェース

public interface operate{  //     
    void select(Book[] books); //  ,  
    void delete(Book[] books);//  ,  
    void add(Book[] books); //  ,  
    void list(Book[] books); //     
}
5.Root類

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

public class Root extends Person implements Operate {
 //      ,          operate,   operate  ,          
 
 public Root(String name, String sex, int age) {
  //          
  super(name, sex, age);
 }

 Scanner sc = new Scanner(System.in);

 /**
  *       
  */
 @Override
 public void operate() {
  System.out.print("       :");
  int i = sc.nextInt();
  switch (i) {
   case 1:
    //  
    sort(books);
    break;
   case 2:
    // 
    select(books);
    break;
   case 3:
    // 
    add(books);
    break;
   case 4:
    // 
    delete(books);
    break;
   case 5:
    //  
    list(books);
    break;
   default:
    System.out.println("    !");
    break;

  }
 }

 /**
  *  compareable  ,  compare to,        ,         ,             ,    
  * @param books
  */
 public void sort(Book[] books) {
  System.out.println("             :" + "
" + "【 】―― 【 】――【 】――【 】―― "); Arrays.sort(books, new Comparator<Book>() { @Override public int compare(Book o1, Book o2) { return (int) (o1.getPrice() - o2.getPrice()); } }); // for (int i = 0; i < books.length; i++) { if (books[i].price != 0) { System.out.println( "【" + books[i].getName() + "】―― 【" + books[i].getAuthor() + "】――【" + books[i].getPrice() + "】――【" + books[i].getCategory() + "】――" + books[i].getState()); } } } @Override public void select(Book[] books) { System.out.println(" :"); String name = sc.next(); if (name != null) { boolean flag = false; int bookNum = 0; for (int i = 0; i < books.length; i++) { if (books[i].getName() != null && name.equals(books[i].getName())) { flag = true; bookNum = i; break; } } if (!flag) { System.out.println(" !"); } else { System.out.println(" :" + "
" + "【 】―― 【 】――【 】――【 】―― "); System.out.println( "【" + books[bookNum].getName() + "】―― 【" + books[bookNum].getAuthor() + "】――【" + books[bookNum] .getPrice() + "】――【" + books[bookNum].getCategory() + "】――" + books[bookNum] .getState()); } } } @Override public void delete(Book[] books) { System.out.println(" :"); String str = sc.next(); if (str != null) { for (int i = 0; i < books.length; i++) { if (books[i].getName().equals(str)) { books[i] = null; System.out.println(" !"); break; } } } } @Override public void add(Book[] books) { System.out.println(" :"); String name = sc.next(); System.out.println(" :"); String author = sc.next(); System.out.println(" :"); double price = sc.nextDouble(); System.out.println(" :"); String category = sc.next(); boolean flag = false; for (int i = 0; i < books.length; i++) { if (books[i].getName() == null) { flag = true; books[i].setName(name); books[i].setAuthor(author); books[i].setPrice(price); books[i].setCategory(category); books[i].setState(true); System.out.println(" "); break; } } if (!flag) { System.out.println("【 】 buffer 3 , , 3 , ‘Person' buffer!" + "
"); } } @Override public void list(Book[] books) { System.out.println(" :" + "
" + "【 】―― 【 】――【 】――【 】―― "); // Book for (int i = 0; i < books.length; i++) { if (books[i] != null) { if (books[i].price != 0) { System.out.println( "【" + books[i].getName() + "】―― 【" + books[i].getAuthor() + "】――【" + books[i].getPrice() + "】――【" + books[i].getCategory() + "】――" + books[i].getState()); } } } } }
6.User類

import java.util.Scanner;

public class User extends Person implements Operate {   //user       ,    operate  

 public User(String name, String sex, int age) {
  //          (             )
  super(name, sex, age);
 }

 Scanner sc = new Scanner(System.in);

 @Override
 public void operate() {  //       

  System.out.print("       :");
  int i = sc.nextInt();
  switch (i) {
   case 1:
    // 
    select(books);
    break;
   case 2:
    // 
    delete(books);
    break;
   case 3:
    // 
    add(books);
    break;
   case 4:
    //   
    list(books);
    break;
   default:
    System.out.println("    !");
    break;
  }
 }

 @Override
 public void select(Book[] books) {
  System.out.println("         :");
  String name = sc.next();
  if (name != null) {
   boolean flag = false;
   int bookNum = 0;
   for (int i = 0; i < books.length; i++) {
    if (books[i].getName() != null && name.equals(books[i].getName())) {
     flag = true;
     bookNum = i;
     break;
    }
   }
   if (!flag) {
    System.out.println("       !");
   } else {
    System.out.println("     :" + "
" + "【 】―― 【 】――【 】――【 】―― "); System.out.println( "【" + books[bookNum].getName() + "】―― 【" + books[bookNum].getAuthor() + "】――【" + books[bookNum] .getPrice() + "】――【" + books[bookNum].getCategory() + "】――" + books[bookNum] .getState()); } } } @Override public void delete(Book[] books) { System.out.println(" :"); String name = sc.next(); if (name != null) { for (int i = 0; i < books.length - 1; i++) { if (books[i].getName().equals(name)) { // false if (!books[i].getState()) { System.out.println("【" + name + "】" + " !"); } else { books[i].setState(false); System.out.println(" !"); } break; } } } } @Override public void add(Book[] books) { System.out.println(" :"); String name = sc.next(); if (name != null) { boolean flag = true; int i = 0; while (flag) { if (books[i].getName().equals(name)) { if (!books[i].getState()) { books[i].setState(true); System.out.println(" !"); flag = false; } else { System.out.println(" !"); break; } } i++; } } } @Override public void list(Book[] books) { System.out.println(" :" + "
" + "【 】―― 【 】――【 】――【 】―― "); // Book for (int i = 0; i < books.length; i++) { if (books[i] != null) { if (books[i].price != 0) { System.out.println( "【" + books[i].getName() + "】―― 【" + books[i].getAuthor() + "】――【" + books[i].getPrice() + "】――【" + books[i].getCategory() + "】――" + books[i].getState()); } } } } }
7.Main類

public class Main {
    public static void main(String[] args) {
        Library library = new Library(); //  Library  
        library.login(); //         。
    }
}
三、実現結果
1.ログイン画面
一般ユーザー登録

2.一般ユーザー:照会、閲覧、返却、表示リスト


3.管理者登録し、図書の価格によって本を整理する

4.管理者が本を追加する

5.管理者が書籍を削除する

以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。