跪求大神帮帮忙,都好说。。。

实验目的:
1. 掌握常用控件的属性、方法、事件
2. 掌握窗体的常用属性、方法和事件
3. 掌握Windows应用程序人机界面可视化设计方法
4. 掌握事件驱动模型的思想
5. 巩固C#语言中类的定义、继承、流程控制语句等基础知识
实验步骤:
(1) 在.Net环境中建立Windows窗体应用程序;
(2) 定义枚举类型
Public enum SexType {男, 女, 未知};
Public enum ProTitle (助教,讲师,副教授、教授、未知)
Public enum StuTitle {班长,副班长,学委,学员}
(3) 定义下面类
 Person类(抽象类)
包含的字段:姓名Name(字符串型)、身高Height(单精度型,单位:米)、体重Weight(单精度,单位:kg)、性别Sex(枚举类型SexType)
包含的属性:身份证号ID(字符串型,长度固定为18,且不包含空格字符)、年龄Age(只读方法)
包含的方法:
Public abstract void Saying(); //该方法为抽象方法
构造函数(带参数和不带参数的各定义一个):
Public Person(){}; //在该构造函数对字段进行初始化,按默认值进行初始化,其中身份证号码初始化为“999999999999999999”
Public person(string name, string id, float height, float weight, SexType sex)
{}; //添加代码,利用实例化时传递的参数对类中的字段进行初始化
Public abstract void Write(FileStream fs); //功能:将数据保存到文件中
Public abstract void Read(FileStream fs); //功能:从文件中读取数据
 Teacher类,该类从Person类继承
包含的字段:职称Title(ProTitle枚举类型)、课程Courses(集合类型,集合元素类型为字符串,访问控制符为private)
包含的属性:CourseNumber (数据类型:int,只读属性,含义:课程的数量)
包含的方法:
Public string CourseAdd(string coursename) //增加一门课程,同一门课程不能重复添加
Public string CourseDelete(string coursename); //删除一门课程,当要删除的课程不存在时,应给出提示
对父类中的抽象函数Saying()进行重写;//在控制台上输出:“我正在讲课,不方便接电话”
对Object类中的虚函数ToString()进行重写;//将有关教师的所有信息整合成一个字符串,并返回。该虚函数在Object中的定义如下:
Public virtual string ToString()
对父类的中Read()、Write()方法进行重写。(方法中的代码可暂时不写)
 定义结构体
Public struct coursescore
{
String coursename; //课程的名称
Float score; //课程的成绩
}
 定义学生类Student,从Person类派生
包含的字段:学号StuID(字符串类型,长度固定,以实际学号的长度为准)、课程成绩CourseScore(集合类型,集合中的元素类型为结构体coursescore,访问修饰符采用private)、学生身份title(类型为枚举类型StuTitle)
包含的属性:
课程门数CourseNumber,定义为只读属性,表示学生所选的课程门数
包含的方法:
Public void CourseAdd(string coursename, float score);
Public void CourseAdd(coursescore course);
上述2个方法为重载,功能是实现增加一门课程及该课程的成绩
对父类的中的Saying()进行重写,要求输出“我正在上课,不方便接电话”
对父类的中的Read、Write方法进行重写(方法体中可暂时不写代码)
增加如下方法:
//功能:获取学生的所有课程的最高分、最低分和平均分
Public void GetScore(ref double HighScore, ref double LowScore, ref double AverageScore)
参数的含义:
HighScore:所有课程中的最高分
LowScore:所有课程中的最低分
AverageScore:所有课程的平均分
对Object类中的虚函数ToString()进行重写,要求该方法将学生的所有信息整合为一个字符串,并返回
 Document类
字段:
Private List CourseList; //存储课程列表
Private List PersonList; //存储学生和教师信息的列表
方法:
Public Document(); //构造函数
Public void AddCourse(string CourseName) ;//增加课程
Pulic void DeleteCourse(string CourseName); //删除课程
Public void AddPerson(person personobj); //增加学生或教师
Public void DeletePerson(person persin); //删除学生或教师对象
Public void DeletePerson(string ID); //按照身份证号码删除教师或学生
Public person FindPerson(string ID); //按照身份证号码查找教师或学生对象
Public void SaveData(FileStream fs); //将数据保存到文件中
Public void ReadData(FileStream fs); //从文件中读取数据
属性:
Public int TeacherNumber;
Public int StudentNumber;
事件:
Public event NumberChangingEventHandler onPersonNumberChanging;
 委托
Public delegate void NumberChangingEventHandler(object sender, EventNumberArgs e);
 EventNumberArgs类(用户传递事件参数)
字段:
Public int teacherNumber;
Public int studentNumber;

c#

3个回答

你要把这个实现还是什么?

你是要做什么,接口、类名及功能、函数方法都已经给出来了,你是要做啥什么啊???

根据需要做个例子 就搞定

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问