Delphi用Constructor声明一个构造函数Create,可在对象产生的时候调用。用Destructor声明一个析构函数Destroy,将在对象销毁的时候调用。
constructor TControlFactory.create(Aowner: TWinControl;
ControlClass: TControlClass);
begin
FControlObj := ControlClass.Create(Aowner);
FControlObj.Parent := Aowner;
FControlObj.Name := FControlObj.ClassName;
FControlObj.SetBounds(10,10,250,150);
self := TControlFactory(FControlObj); //这句话不明白
end;
原始数据(简单的数据类型)和对象(类类型)的区别。原始数据可以看作一个只有单一属性并且不具有方法的简单对象。
TGPSReceiver = class (TObject)
public
procedure Navigate;
end;
TEngine = class (TObject)
private
FCapacity: Integer;
FPower: Integer;
public
procedure start;
procedure stop;
end;
TWheel = class (TObject)
private
FNo: Integer;
FSize: Integer;
FTypeName: string;
procedure check;
public
constructor create(size:Integer;TypeName:string;No:Integer);
end;
TVehicle = class (TObject)
protected
FColor: string;
FMake: string;
FTopSpeed: Integer;
FWheel: TWheel;
FWheels: TList;
procedure SlowDown;
procedure SpeedUp;
procedure Start;
procedure Stop;
end;
TBicycle = class (TVehicle)
public
constructor create;
destructor Destory;
procedure ride;
end;
TCar = class (TVehicle)
private
FGPSReceiver: TGPSReceiver;
FTopSpeed: Integer;
protected
FEngine: TEngine;
public
constructor create(GPS:TGPSReceiver;color:string;Make:string;
TopSpeed:Integer);
destructor Destory;
procedure drive;
property GPSReceiver: TGPSReceiver read FGPSReceiver write FGPSReceiver;
property TopSpeed: Integer read FTopSpeed write FTopSpeed;
end;
TPerson类的对象与TCar类的对象与TBicycle类的对象存在依赖关系。虚线指向依赖。GPS导航系统与人之间是合作关系,用实线表示。
原文:https://blog.51cto.com/470462/2485265