首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

TSchoolClass,TStudent类设计,该怎么处理

2012-02-10 
TSchoolClass,TStudent类设计新手学习OOP,但是不明白怎么才能如下的功能:比如TStudent类有ID,Name,Gender

TSchoolClass,TStudent类设计
新手学习OOP,但是不明白怎么才能如下的功能:

比如TStudent类有ID,Name,Gender属性,TSchoolClass类的属性之一是Students,其数据类型是TStudent,班级人数不固定,可以通过SchoolClass.Students.Add(Student)来增加,或者SchoolClass.Students.Delete(Student)来删除,要求能够计算班级的人数SchoolClass.Students.Count,   能够通过序号、学号或者姓名来返回学生类的实例:   SchoolClass.Students[Index],   SchoolClass.StudentByXuehao(Xuehao),   SchoolClass.StudentByName( 'Student   Name ')对象。

请问该如何设计这些类?

[解决办法]
参考一下VCL,如treeview 的items
[解决办法]
也不算难得,你可以参考一下TListView, TListItems, TListItem三者之间的关系,这个和你那个差不多的,TListView比TTreeView还简单些。
三个类
TSchoolClass 相当于 TListView
TStudents 相当于 TListItems
TStudent 相当于 TListItem
先设计TStudent :
类似TListItem
constructor Create(AOwner: TStudents ); // 构造函数,指明所属的TStudents
destructor Destroy; override; // 析构函数,删除的时候同时要从TStudents中移出
// 三个你要的属性ID,Name,Gender
property Id: string read FId write FId;
// 添加一些其他的属性,比如说Owner
property Owner: TStudents read FOwner;
其他两个都差不多,仿照一下,就行了


热点排行