21xrx.com
2024-11-22 07:35:46 Friday
登录
文章检索 我的文章 写文章
Java期末题:利用面向对象编程实现学生信息管理系统
2023-06-17 21:57:28 深夜i     --     --
Java语言 面向对象编程 学生信息管理系统

在计算机科学的课程中,Java语言是非常重要的一门语言,被广泛应用于企业级项目的开发。作为这门语言的学习者,我们需要通过实践来巩固所学知识。下面就提供一个Java期末题的示例,展示如何利用面向对象编程实现学生信息管理系统。

请在Eclipse或者其他编译器中创建一个Java项目,包含两个类:Student类和StudentManager类。其中,Student类表示学生信息,包含学生的姓名、年龄、性别、学号、专业五个属性。StudentManager类表示学生信息管理系统,包含添加学生、删除学生、查询学生、修改学生信息等操作。下面是具体的代码实现:

**Student.java**


public class Student {

  private String name;

  private int age;

  private String gender;

  private int id;

  private String major;

  public Student(String name, int age, String gender, int id, String major)

    this.name = name;

    this.age = age;

    this.gender = gender;

    this.id = id;

    this.major = major;

  

  public String getName()

    return name;

  

  public void setName(String name)

    this.name = name;

  

  public int getAge()

    return age;

  

  public void setAge(int age)

    this.age = age;

  

  public String getGender()

    return gender;

  

  public void setGender(String gender)

    this.gender = gender;

  

  public int getId()

    return id;

  

  public void setId(int id)

    this.id = id;

  

  public String getMajor()

    return major;

  

  public void setMajor(String major)

    this.major = major;

  

}

**StudentManager.java**


import java.util.ArrayList;

import java.util.Scanner;

public class StudentManager {

  private ArrayList students = new ArrayList ();

  public void addStudent() {

    Scanner scanner = new Scanner(System.in);

    System.out.println("请输入学生姓名:");

    String name = scanner.nextLine();

    System.out.println("请输入学生年龄:");

    int age = scanner.nextInt();

    scanner.nextLine();

    System.out.println("请输入学生性别:");

    String gender = scanner.nextLine();

    System.out.println("请输入学生学号:");

    int id = scanner.nextInt();

    scanner.nextLine();

    System.out.println("请输入学生所在专业:");

    String major = scanner.nextLine();

    students.add(new Student(name, age, gender, id, major));

  }

  public void deleteStudent() {

    Scanner scanner = new Scanner(System.in);

    System.out.println("请输入要删除的学生学号:");

    int id = scanner.nextInt();

    for (int i = 0; i < students.size(); i++) {

      if (students.get(i).getId() == id) {

        students.remove(i);

        System.out.println("删除成功!");

        return;

      }

    }

    System.out.println("未找到该学号的学生!");

  }

  public void queryStudent() {

    Scanner scanner = new Scanner(System.in);

    System.out.println("请输入要查询的学生姓名:");

    String name = scanner.nextLine();

    ArrayList queryResult = new ArrayList ();

    for (int i = 0; i < students.size(); i++) {

      if (students.get(i).getName().equals(name)) {

        queryResult.add(students.get(i));

      }

    }

    if (queryResult.size() == 0) {

      System.out.println("未找到该姓名的学生!");

    } else {

      System.out.println("查询结果如下:");

      for (int i = 0; i < queryResult.size(); i++) {

        System.out.println("姓名:" + queryResult.get(i).getName() + ",年龄:" + queryResult.get(i).getAge()

                  + ",性别:" + queryResult.get(i).getGender() + ",学号:" + queryResult.get(i).getId()

                  + ",专业:" + queryResult.get(i).getMajor());

      }

    }

  }

  public void modifyStudent() {

    Scanner scanner = new Scanner(System.in);

    System.out.println("请输入要修改信息的学生学号:");

    int id = scanner.nextInt();

    scanner.nextLine();

    for (int i = 0; i < students.size(); i++) {

      if (students.get(i).getId() == id) {

        System.out.println("请输入学生姓名:");

        String name = scanner.nextLine();

        System.out.println("请输入学生年龄:");

        int age = scanner.nextInt();

        scanner.nextLine();

        System.out.println("请输入学生性别:");

        String gender = scanner.nextLine();

        System.out.println("请输入学生所在专业:");

        String major = scanner.nextLine();

        students.get(i).setName(name);

        students.get(i).setAge(age);

        students.get(i).setGender(gender);

        students.get(i).setMajor(major);

        System.out.println("修改成功!");

        return;

      }

    }

    System.out.println("未找到该学号的学生!");

  }

  public void printMenu() {

    System.out.println("============================");

    System.out.println("学生信息管理系统");

    System.out.println("============================");

    System.out.println("1. 添加学生信息");

    System.out.println("2. 删除学生信息");

    System.out.println("3. 查询学生信息");

    System.out.println("4. 修改学生信息");

    System.out.println("5. 退出系统");

    System.out.println("============================");

  }

  public void run() {

    Scanner scanner = new Scanner(System.in);

    while (true) {

      printMenu();

      System.out.println("请输入操作编号:");

      int choice = scanner.nextInt();

      scanner.nextLine();

      switch (choice) {

        case 1:

          addStudent();

          break;

        case 2:

          deleteStudent();

          break;

        case 3:

          queryStudent();

          break;

        case 4:

          modifyStudent();

          break;

        case 5:

          System.out.println("感谢使用本系统!");

          return;

        default:

          System.out.println("输入有误,请重新输入!");

      }

    }

  }

  public static void main(String[] args) {

    StudentManager studentManager = new StudentManager();

    studentManager.run();

  }

}

通过这个示例,我们实现了一个简单的学生信息管理系统。除了基本的增删查改操作之外,还实现了一个简单的菜单界面,提示用户如何操作。在实现这个系统的过程中,我们使用了面向对象的编程方法,将学生信息和学生信息管理系统分别表示为一个类,并进行了适当的封装和调用,使得整个程序更加可读、可维护、可扩展。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复