main
陈彤 6 months ago
parent 98137ffda3
commit 36eba47760

@ -0,0 +1,90 @@
package basic;
/**
*
*/
public class Course {
private int id;
private String name;
private int credit;
// 所属学科(多对一关系)
private Subject subject;
// 先修课程(一门课程可能有多门先修课程)
private java.util.List<Course> prerequisiteCourses;
public Course(int id, String name, int credit) {
this.id = id;
this.name = name;
this.credit = credit;
this.prerequisiteCourses = new java.util.ArrayList<>();
}
// 添加先修课程
public void addPrerequisiteCourse(Course course) {
if (course != null) {
prerequisiteCourses.add(course);
}
}
// 移除先修课程
public void removePrerequisiteCourse(Course course) {
if (course != null) {
prerequisiteCourses.remove(course);
}
}
// 设置学科
public void setSubject(Subject subject) {
this.subject = subject;
}
// Getters and Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getCredit() {
return credit;
}
public void setCredit(int credit) {
this.credit = credit;
}
public Subject getSubject() {
return subject;
}
public java.util.List<Course> getPrerequisiteCourses() {
return prerequisiteCourses;
}
public void setPrerequisiteCourses(java.util.List<Course> prerequisiteCourses) {
this.prerequisiteCourses = prerequisiteCourses;
}
@Override
public String toString() {
return "Course{" +
"id=" + id +
", name='" + name + '\'' +
", credit=" + credit +
", subject=" + (subject != null ? subject.getName() : "null") +
", prerequisites.size()=" + prerequisiteCourses.size() +
'}';
}
}

@ -0,0 +1,55 @@
package basic;
/**
*
*/
public class Grade {
private int id;
private double score;
// 所属学生(多对一关系)
private Student student;
// 所属课程(多对一关系)
private Course course;
public Grade(int id, Course course, double score) {
this.id = id;
this.course = course;
this.score = score;
}
// 设置学生
public void setStudent(Student student) {
this.student = student;
}
// Getters and Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
public Student getStudent() {
return student;
}
public Course getCourse() {
return course;
}
public void setCourse(Course course) {
this.course = course;
}
}

@ -0,0 +1,68 @@
package basic;
/**
*
*/
public class Student {
private int id;
private String name;
private advanced.Parent parent;
// 学生的所有成绩(一对多关系)
private java.util.List<Grade> grades;
public Student(int id, String name) {
this.id = id;
this.name = name;
this.grades = new java.util.ArrayList<>();
}
// 添加成绩
public void addGrade(Grade grade) {
grades.add(grade);
}
// 移除成绩
public void removeGrade(Grade grade) {
grades.remove(grade);
}
// Getters and Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public java.util.List<Grade> getGrades() {
return new java.util.ArrayList<>(grades);
}
public advanced.Parent getParent() {
return parent;
}
public void setParent(advanced.Parent parent) {
this.parent = parent;
}
@Override
public String toString() {
return "Student{" +
"id=" + id +
", name='" + name + '\'' +
", parent=" + (parent != null ? parent.getName() : "null") +
", grades.size()=" + grades.size() +
'}';
}
}

@ -0,0 +1,49 @@
package basic;
/**
*
*/
public class Subject {
private int id;
private String name;
// 该学科下的所有课程(一对多关系)
private java.util.List<Course> courses;
public Subject(int id, String name) {
this.id = id;
this.name = name;
this.courses = new java.util.ArrayList<>();
}
// 添加课程
public void addCourse(Course course) {
courses.add(course);
}
// 移除课程
public void removeCourse(Course course) {
courses.remove(course);
}
// Getters and Setters
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public java.util.List<Course> getCourses() {
return new java.util.ArrayList<>(courses);
}
}
Loading…
Cancel
Save