Java难度一般,java该如何开发一个学生管理系统

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

题目:本部分将开发一个学生管理系统,实现对学生信息、课程信息、成绩信息和教师信息的管理。
CW3 B部分占总分的50%。
系统有以下几个类:
(1)创建班级“课程”来表示课程信息的管理系统。它应该至少有两个成员变量“courseId”和“courseName”。
(2)创建类“Person”。它至少有两个成员变量“name”和“gender”。Gender应该是一个enum类型,有两个值“MALE”和“FEMALE”。
(3)从基类“Person”继承一个类“Student”来表示学生信息。它至少有一个新成员变量“stuId”。
(4)从基类“Person”继承创建一个类“Teacher”来表示教师信息。它至少有3个新成员变量“teacherId”、“loginName”和“password”。
(5)创建一个class“Grade”来表示一个学生的模块成绩。它至少有3个成员变量“stuId”、“courseId”和“grade”来表示学生id、课程id和该学生的某门课程的成绩。
(6)完成“加密”类,修复编译错误,包括适当的异常处理,我们已经提供了大部分代码,对教师的密码进行加密和解密。
(7)创建类“FileUtils”,可创建纯文本文件,分别保存学生、教师、课程和成绩对象。此外,它应该提供从文件中检索对象的方法。为了实现这一点,Student, Teacher, Course和Grade类应该实现一个Serializable接口。
(8)创建一个类“DataAccess”,调用FileUtils类创建并保存对象(Student, Course, Grade, Teacher)到4个不同的纯文本文件中。类应该使用ArrayList来保存从文件中检索到的对象。此外,它还可以根据对象的id搜索和返回对象。例如," Student getStudentById(String stuId) "方法可以根据学生Id搜索并返回一个学生对象。
(9)创建类“Q3”,在其主要方法中实现以下功能。a.创建如下操作菜单:

7

就照着文本打实体类,再写实体关系。。建个数据库再注入。加油

亲爱的提问者您好,我们很乐意您在CSDN找到问题的答案。
但是问答频道谢绝一切直接提问作业、求源代码等的行为,在此对您发出正式警告。
请您在思考后提出问题,后续如果继续不加思考,直接提出作业问题,我们会限制您在问答频道的提问权益。
CSDN问答也鼓励用户通过举报功能来对这些行为进行监督反馈,共建问答频道良好的风气。

根据题目要求一点点去实现,题目要求说明也挺详细的。
编写的过程中,遇到问题再提问更好一点。