vfp课件类和控件概要.ppt
文本预览下载声明
第八章 面向对象程序设计 8.1 面向对象程序设计的概念 8.2 VFP中的类 8.3 VFP中对象的操作 第八章 面向对象程序设计 VFP6支持过程化程序设计和面向对象程序设计两种程序设计与开发的类型。 8.1 面向对象的程序设计的概念 面向对象编程用“对象”表现事物,用“事件”表示处理事物的动作,用“方法”表现处理事物的过程。 面向对象程序设计时,不再是单纯地从代码的第一行一直编写到最后一行,而是考虑如何创建对象,利用对象来简化程序设计。 Visual FoxPro不但仍然支持标准的结构化程序设计,而且在语言上还进行了扩展,提供了面向对象程序设计的强大功能和更大灵活性。 VFP是面向对象(Object Oriented)的,是以事件驱动为运行机制的。 8.1 面向对象的程序设计的概念 例8.1:设计一个窗口,如下图所示.窗口中包含两个文本 框,用于输入数据,还有一个命令按纽,单击它可以将两个 文本框中的数相加,并在等号右边显示结果. 8.1 面向对象的程序设计的概念 CLICK事件代码: thisform.label3.caption=alltrim(str(val(thisfor m.text1.value)+val(thisform.text2.value))) 8.1.1 对象 1.对象 面向对象的理论首先把现实世界中的各种事物,划分为不同的类(Class),类是抽象的概念。类有“状态”和“行为”,“状态”是类的静态属性,但可以通过动态的“行为”来改变。 一个类的具体实例就是对象(Object)。类是抽象的,而对象是具体的。对象具有该类的状态和行为。 客观世界里的任何实体都可以被看作是对象。对象可以是具体的物,也可以指某些概念。 从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。事实上程序中的对象就是对客观世界中对象的一种抽象描述。 8.1.1 对象 从程序员的角度:世界上一切东西都是对象;在面向对象系统中一切成分都是对象,大到整个系统、项目、数据库、表、表单,小到窗口、控件都被视为对象。 从程序的角度:对象是一个实体,包含一定的属性和方法(动作),属性用来表示对象的状态,方法用来描述对象的行为,并且对象能够对外界事件进行响应。 8.1.1 对象 在面向对象的方法里,对象被定义为由属性和相关方法组成的包。 方法是描述对象行为的过程,是对当某个对象接受了某个信息后所采取的一系列操作的描述。 8.1.1 对象 2.对象的特性 一般对象具有如下属性: 属性(Property):属性用来表示对象的状态。在程序设计中,类或对象的“状态”或特征称为属性。属性具有属性名和属性值,通过属性名,可以访问属性值,或为属性赋值。 事件(Event):类或对象可能执行或发生的行为称为事件。 8.1.1 对象 事件过程(Event Procedure):即对象响应某个事件所执行的程序代码。程序代码是为处理特定的事件而编写的一段程序,也称为事件代码。 面向对象的程序设计的核心思路,就是为这些事件书写程序代码,在代码中改变对象的一些属性值,并让对象做出我们所期望的反应。 方法(Method):又称方法程序,是描述对象行为的过程。即指对象所固有的完成某种任务的功能,是对象能够执行的一个操作。因此,“方法”类似于面向过程程序设计中的“过程”和“函数”。 8.1.1 对象 从面向对象的理论看,“方法”与“事件”本质上是相同的。“事件”可以看成系统预先定义的空“方法”,可以在事件中调用用户定义的方法,也可以在用户自定义方法中激活特定事件。但在VFP中,“方法”在很多情况下更基本,因为VFP预先定义了一些方法,可以在事件中调用它们,而它们一般不调用事件。 8.1.2 类 1.类的概念 类是对一类相似对象的性质描述,这些对象具有相同种类的属性以及方法 。 为了便于开发系统,面向对象的开发工具一般都会提供很多预先定义好的类和对象,并为这些类和对象预先设置足够多的属性和事件,以及足够多的方法,供程序员自由调用。 通常,把基于某个类生成的对象称为这个类的实例。可以说任何一个对象都是某个类的一个实例。 方法虽然定义在类中,但执行方法的主体是对象。同一个方法,若由不同的对象去执行,一般会产生不同的效果。 8.1.2 类 1.类的概念 8.1.2 类 2.子类与继承 在面向对象的方法里,继承就是一个类可以在另一个类的基础上建立,继承该类的所有属性和事件。被继承的类称为父类,继承父类建立的类称为子类。 在子类中,不仅可以继承父类的所有特性,而且还可以增加自己的属性和方法程序。 一个子类的成员一般包括: 从其父类继承的属性和方法; 由子类自己定义的属性和方法。 继承
显示全部