用Java 实现一个学生管理系统(需要包含Student Course Function Text四个类)

编写一个学生成绩管理系统。学生的属性包括学号、姓名、年龄等。每个学生要学习若干课程,每门课程有平时成绩、其中考试成绩、实习成绩、期末考试成绩以及总评成绩等多个成绩,其中平时成绩的数目不定(因为不同课程的教师布置的平时不同),而总评成绩是其它成绩的平均值。请先设计合理的类存放这些信息,然后设计程序完成以下功能:

1.列出某个学生的所有成绩

2.列出某门课程每个学生的总评成绩,及所有学生总评成绩的总评分

3.分区段统计某门课程的学生总评成绩,例如60分以下的学生人数、60至70分的学生人数等

package 学生管理系统;
import java.util.Scanner;
 
public class Student {
    private int age;
    private String id;
    private String Sname;
    private Course[] courselist;
    private int coursenum = 0;
    private static final int Maxcoursenum = 10;
    Scanner sc = new Scanner(System.in);
    
    //构造方法
    public Student(String Sname) {
        courselist = new Course[Maxcoursenum];
        boolean flag=true;
        String course;
        
        this.Sname=Sname;
        System.out.println("请输入学号:");
        this.id=sc.next();
        System.out.println("请输入年龄:");
        this.age=sc.nextInt();
        while(coursenum<Maxcoursenum) {
            flag=true;
            System.out.println("请输入所修课程:(输入end结束)");
            course=sc.next();
            if("end".equals(course)) {
                break;
            }
            else {
                for(int i=0;i<coursenum;i++) {
                    if(courselist[i].GetCname().equals(course)) {
                        System.out.println("课程已存在");    
                        flag=false;
                    }
                }
                if(flag==true) {
                    courselist[coursenum]=new Course(course);
                    this.coursenum++;
                }            
            }
        }
        System.out.println("学生:"+this.Sname+"创建成功");
        System.out.println("共修"+this.coursenum+"门课程");
    }
    
    //设置课程
    public boolean SetCourse() {
        String Cname;
        Cname=sc.next();
        System.out.println("请输入课程名:");
        for(int i=0;i<this.coursenum;i++) {
            if(courselist[i].GetCname().equals(Cname)) {
                System.out.println("课程已存在");
                return false;
            }
        }
        Course course = new Course(Cname);
        courselist[coursenum]=course;
        coursenum++;
        return true;
    }
    
    //查看自身信息
    public void GetMessasge() {
        System.out.println("该学生的成绩是:");
        for(int i=0;i<this.coursenum;i++) {
            System.out.println(courselist[i].toString());
        }
    }
    
    //重置学生姓名
    public void SetSname() {
        String new_name;
        System.out.println("请输入学生姓名:");
        new_name=sc.next();
        this.Sname=new_name;
        System.out.println("姓名修改成功");
    }
    
    //获得学生姓名
    public String GetName() {
        return this.Sname;
    }
    
    //重置学生年龄
    public void SetAge() {
        int new_age;
        System.out.println("请输入学生年龄:");
        new_age=sc.nextInt();
        this.age=new_age;
        System.out.println("年龄修改成功");
    }
    
    //获得学生年龄
    public int GetAge() {
        return this.age;
    }
    
    //重置学生学号
    public void SetId() {
        String new_id;
        System.out.println("请输入学生学号:");
        new_id=sc.next();
        this.id=new_id;
        System.out.println("学号修改成功");
    }
    
    //获得学生学号
    public String GetId() {
        return this.id;
    }
    
    //获得学生所修课程
    public Course[] GetCourse() {
        return this.courselist;
    }
    
    //获得学生所修课程数目
    public int GetCourseNum() {
        return this.coursenum;
    }
}

差不多思路,参考下,https://blog.csdn.net/m0_52660785/article/details/125167598