学生选课系统java代码_第1页
学生选课系统java代码_第2页
学生选课系统java代码_第3页
学生选课系统java代码_第4页
学生选课系统java代码_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生选课系统java代码

学生选课系统是一个常见的教务管理系统,它允许学生在规定的时间

内选择自己感兴趣的课程。在这个系统中,学生可以浏览课程目录、

查看课程信息、进行选课和退课等操作。下面是一个使用Java编写的

学生选课系统的代码实现。

##1.数据模型设计

我们需要设计几个基本的数据模型来表示学生、课程和选课记录。

###1.1学生类(Student)

、、、•

java

publicclassStudent{

privateintid;//学号

privateStringname;//姓名

privateList<Course>courses;//已选课程

publicStudent(intid,Stringname){

this.id=id;

=name;

this.courses=newArrayList<>();

)

//省略getter和setter方法

)

、、、

###1.2课程类(Course)

、、、•

java

publicclassCourse{

privateintcourseld;//课程编号

privateStringcourseName;//课程名称

privateintcapacity;//选课容量

privateList<Student>students;//已选该门课程的学生列表

publicCourse(intcourseld,StringcourseName,intcapacity){

this.courseld=courseld;

this.courseName=courseName;

this.capacity=capacity;

this.students=newArrayList<>();

)

//省略getter和setter方法

)

、、、

###1.3选课记录类(Enrollment)

、、、♦

java

publicclassEnrollment{

privateStudentstudent;//学生

privateCoursecourse;//课程

publicEnrollment(Studentstudent,Coursecourse){

this.student=student;

this.course=course;

)

//省略getter和setter方法

)

、、、

##2.学生选课系统实现

接下来,我们可以开始实现学生选课系统的功能了。

###2.1课程管理

我们需要实现对课程的管理,包括添加新的课程、查看所有课程和根

据课程编号查询特定课程等功能。

、、、•

java

importjava.utiLArrayList;

importjava.util.List;

publicclassCourseManager{

privateList<Course>courses;

publicCourseManager(){

this.courses=newArrayList<>();

)

publicvoidaddCourse(Coursecourse){

courses.add(course);

)

publicList<Course>getAIICoursesQ{

returncourses;

)

publicCoursegetCourseById(intcourseld){

for(Coursecourse:courses){

if(course.getCourseld()==courseld){

returncourse;

)

)

returnnull;

)

)

w\

###2.2学生管理

我们需要实现对学生的管理,包括添加新的学生、查看所有学生和根

据学号查询特定学生等功能。

、、、•

java

importjava.util.ArrayList;

importjava.util.List;

publicclassStudentManager{

privateList<Student>students;

publicStudentManagerQ{

this.students=newArrayList<>();

)

publicvoidaddStudent(Studentstudent){

students.add(student);

)

publicList<Student>getAIIStudents(){

returnstudents;

)

publicStudentgetStudentById(intstudentld){

for(Studentstudent:students){

if(student.getldO==studentld){

returnstudent;

)

}

returnnull;

)

)

\\\

###2.3选课管理

我们需要实现选课和退课的功能。

、、、♦

java

publicclassEnrollmentManager{

privateList<Enrollment>enrollments;

publicEnrollmentManager(){

this.enrollments=newArrayListoQ;

)

publicvoidenroll(Studentstudent,Coursecourse){

if(course.getCapacityO>course.getStudents().size()){

course.getStudents().add(student);

student.getCourses().add(course);

enrollments.add(newEnrollment(student,course));

System.out.println("选课成功!");

}else{

System.out.println("选课失败,该课程已满!");

)

}

publicvoidwithdraw(Studentstudent,Coursecourse){

if(course.getStudents().contains(student)){

course.getStudents().remove(student);

student.getCourses().remove(course);

for(Enrollmentenrollment:enrollments){

if(enrollment.getStudentO==student&&

enrollment.getCourseO==course){

enrollments.remove(enrollment);

break;

)

)

System.out.println("退课成功!");

}else{

System.out.println("退课失败,您未选择该门课程!");

)

)

)

、、、

##3.测试代码

为了验证学生选课系统的功能是否正常,我们可以编写一些测试代码

来进行测试。

、、、•

java

publicclassMain{

publicstaticvoidmain(String[]args){

//创建课程

CourseManagercourseManager=newCourseManager();

Coursecoursel=newCourse(l,"JavaProgramming",30);

Coursecourse2=newCourse(2,"DatabaseManagement",

20);

courseManager.addCourse(coursel);

courseManager.addCourse(course2);

//创建学生

StudentManagerstudentManager=new

StudentManager();

Studentstudentl=newStudent(10001,"Alice");

Studentstudent2=newStudent(10002,"Bob");

studentManager.addStudent(studentl);

studentManager.addStudent(student2);

//进行选课和退课操作

EnrollmentManagerenrollmentManager=new

EnrollmentManager();

enrollmentManager.enrolKstudentl,coursel);

enrollmentManager.enroll(student2,coursel);

enrollmentManager.enroll(student2,course2);

System.out.println("学生"+studentl.getName()+"选择的

课程:");

for(Coursecourse:studentl.getCoursesQ){

System.out.println(course.getCourseName());

)

System.out.println("学生"+student2.getName()+"选择的

课程:");

for(Coursecourse:student2.getCourses()){

System.out.println(course.getCourseName());

)

enrollmentManager.withdraw(student2,coursel);

Systum.out.println("学生"+student2.get

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论