Delphi面向对象编程思想 学习笔记

Delphi面向对象程序设计思想

学习笔记

第二章 Delphi对象模型

Delphi类类型声明语法:

Type 类名 = class (基类)

数据成员声明;

过程和函数声明;

属性;

End;

类型定义的例子:

//一个“人”类的定义

type

TMan = class (TObject)

private

FAge: Integer;

procedure SetAge(Value: Integer);

public

Language: string;

Married: Boolean;

Name: string;

SkinColor: string;

constructor create(nname:string); overload;

property Age: Integer read FAge write SetAge;

procedure sayHello(words:pchar);

end;

方法的定义:

constructor TMan.create(nname:string);

begin

Name:=nname;

Language:='中文';

SkinColor:='黄色';

FAge:=200;

Married:=True;

end;

procedure TMan.SetAge(Value: Integer);

begin

if Value<2 then FAge:=0

else FAge:=Value;

end;

procedure TMan.SayHello(Words:PChar);

begin

showmessage(words);

end;

一个类定义包括数据成员、方法、属性。

第二章

2、类定义的方法:静态、虚方法、抽象方法、方法的覆盖与重载:

例子:

Type

//一个类的定义

Tmyclass=class

procedure iams; //定义一个静态方法

procedure iamv;virtual; //定义一个虚方法

procedure iamd;dynamic; //定义一个动态方法

procedure iamva;virtual;abstract; //定义一个抽象虚方法

procedure test(i:Integer);overload;//方法重载

end;

//另一个类的定义

Tmyclass1=class(Tmyclass)

procedure iamv;override;

procedure iamva;override;

procedure test(s:string);reintroduce;overload;

end;

3、类成员的可见性:

Private:私有成员,只能在该类的方法中被被访问;但在delphi中,同一单元的类的私有成员可以被其他类访问。

Protected:保护成员,在其派生类中是公用的;

Public:公共接口;

Published:同public,可在RTTI(runtime type information)中可见。