Visual Foxpro OOP方法正是用一组称为“属性”的数据模拟所 描述实体(如学生)的静态特征、而用一组称为 “方法程序”的程序过程模拟该实体对一些“事 件”(如受到学校嘉奖)的反映。把模拟一个实 体的“属性”数据和“方法程序”通过一定的形 式进行“封装”就建立起了一个OOP方法中的 对象。 当然,如果对被管理的成千上万个学生都这样一个 个完全独立地设计“程序对象”,其工作量将会 大得惊人,这实际上是不可能的。OOP方法中, 通过另一种称为“类”的工具对这一问题给出了 个巧妙的解决办法
Visual FoxPro 6 OOP方法正是用一组称为“属性”的数据模拟所 描述实体(如学生)的静态特征、而用一组称为 “方法程序”的程序过程模拟该实体对一些“事 件”(如受到学校嘉奖)的反映。把模拟一个实 体的“属性”数据和“方法程序”通过一定的形 式进行“封装”就建立起了一个OOP方法中的 对象。 当然,如果对被管理的成千上万个学生都这样一个 个完全独立地设计“程序对象”,其工作量将会 大得惊人,这实际上是不可能的。OOP方法中, 通过另一种称为“类”的工具对这一问题给出了 一个巧妙的解决办法
Visual Foxpro 2类( Class) “类”是具有相同属性特征和行为规则的多个“对象” 的一种统一描述。对于一个学校的全体学生,描述 其特征的数据模式是相同的(当然不同“对象”的 特征值会有不同)。行为规则有不同的地方,也有 相同的地方。如果我们侧重于描述每个个体对一些 诸如观看球赛、对待他人遇到意外事件的反映等等, 不同个体间的反映可能很不相同,描述其反映的 “方法程序”也许无法共享。但如果将行为的选择 加以一些限制,将引起学生反映的外部事件归纳为:
Visual FoxPro 7 2.类(Class) “类”是具有相同属性特征和行为规则的多个“对象” 的一种统一描述。对于一个学校的全体学生,描述 其特征的数据模式是相同的(当然不同“对象”的 特征值会有不同)。行为规则有不同的地方,也有 相同的地方。如果我们侧重于描述每个个体对一些 诸如观看球赛、对待他人遇到意外事件的反映等等, 不同个体间的反映可能很不相同,描述其反映的 “方法程序”也许无法共享。但如果将行为的选择 加以一些限制,将引起学生反映的外部事件归纳为:
Visual Foxpro (1)一个新学年度到来时,学生的整体反映应该是 缴费报导。 (2)当一个学年度不及格科目超过学校规定时,这 部分学生应该留级或退学。 (3)完成规定科目的学习并考试合格者,学生的整 体反映是毕业离校 在一般管理信息系统中,系统的使用者和设计者所关 心的问题正是这样一些共性问题而并非一些很个体 的问题,这样设计者就可以对个体的行为进行分析 归纳、抽象,形成整个群体的共同行为规范,并把 这种共同的行为规范用程序设计语言描述成程序过 程,和描述该群体的特征数据模式一起进行封装 这样就完成了OOP方法中一个“类”的设计
Visual FoxPro 8 (1)一个新学年度到来时,学生的整体反映应该是 缴费报导。 (2)当一个学年度不及格科目超过学校规定时,这 一部分学生应该留级或退学。 (3)完成规定科目的学习并考试合格者,学生的整 体反映是毕业离校。 在一般管理信息系统中,系统的使用者和设计者所关 心的问题正是这样一些共性问题而并非一些很个体 的问题,这样设计者就可以对个体的行为进行分析、 归纳、抽象,形成整个群体的共同行为规范,并把 这种共同的行为规范用程序设计语言描述成程序过 程,和描述该群体的特征数据模式一起进行封装, 这样就完成了OOP方法中一个“类”的设计
N在OOP方法中,“类”是对现实世界的一种高度 抽象与概括,而“对象”则是“类”的一个实例, “对象”一定具有其属“类”的共同特征与行为规则, 当然一个“对象”还可以具有其属“类”未曾规定的 特征和行为规则。这一点和现实生活是非常相同的, 这样的模拟和抽象比较符合人们的思维习惯,这也正 是OOP方法具有强大生命力,能够获得越来越多的软 件工作者欢迎并得到众多计算机开发商支持的一个基 本原因。 总之,从程序设计者的角度观察,“类”是一个数 据模式和若干个程序过程(称为“方法程序”、一般 种行为用一个程序过程描述)经封装而形成的一个 整体,它是使用信息技术对现实世界的一种模拟与抽 象,而“对象”则是“类”的一个实例,用程序设计 语言来说,“对象”可以不精确的理解为对一个“类 赋值的结果。“对象”是OOP方法中组成程序一种构
Visual FoxPro 9 在OOP方法中, “类”是对现实世界的一种高度 抽象与概括,而“对象”则是“类”的一个实例, “对象”一定具有其属“类”的共同特征与行为规则, 当然一个“对象”还可以具有其属“类”未曾规定的 特征和行为规则。这一点和现实生活是非常相同的, 这样的模拟和抽象比较符合人们的思维习惯,这也正 是OOP方法具有强大生命力,能够获得越来越多的软 件工作者欢迎并得到众多计算机开发商支持的一个基 本原因。 总之,从程序设计者的角度观察, “类”是一个数 据模式和若干个程序过程(称为“方法程序” 、一般 一种行为用一个程序过程描述)经封装而形成的一个 整体,它是使用信息技术对现实世界的一种模拟与抽 象,而“对象”则是“类”的一个实例,用程序设计 语言来说, “对象”可以不精确的理解为对一个“类” 赋值的结果。 “对象”是OOP方法中组成程序一种构 件
FOXPro 3事件与响应 “事件”是由外部实体作用在“对象”上的一个动作 在现实生活中,某人出生、死 其电话震铃、设 定的闹钟响了以及过生日又长了一岁等等都称为 个事件,人们都会对这些事件做出一定的反映:如 电话震铃就要接听电话、设定的闹钟响了可能就要 素于二件什么事情 过生日后可能要入学了等等 在OOP方法中,作用在“对象”上的事件包括对象 的创立、释放、收到其他对象发来的“消息”等, 对于一些可视对象,如命令按钮等,其最常见的 “事件”往往是一些鼠标动作,如“单击”、“双 击”、“拖放”或修改对象数据等等。当作用在对 象上的某个设定“事件”发生时,与该事件相联系 的“方法程序”(当然假设对象的设计者设计了该 序并与对象一同封装)就运行并完成该程序的 OO就用这种机制来模拟对象对外部事件的 映并进而完成由外部事件序列所规定的功能 10
Visual FoxPro 10 3. “事件”是由外部实体作用在“对象”上的一个动作。 在现实生活中,某人出生、死亡、其电话震铃、设 定的闹钟响了以及过生日又长了一岁等等都称为一 个事件,人们都会对这些事件做出一定的反映:如 电话震铃就要接听电话、设定的闹钟响了可能就要 去干一件什么事情,而过生日后可能要入学了等等。 在OOP方法中,作用在“对象”上的事件包括对象 的创立、释放、收到其他对象发来的“消息”等, 对于一些可视对象,如命令按钮等,其最常见的 “事件”往往是一些鼠标动作,如“单击” 、 “双 击” 、 “拖放”或修改对象数据等等。当作用在对 象上的某个设定“事件”发生时,与该事件相联系 的“方法程序”(当然假设对象的设计者设计了该 程序并与对象一同封装)就运行并完成该程序的功 能。OOP就用这种机制来模拟对象对外部事件的反 映并进而完成由外部事件序列所规定的功能