1.抽象类方法
抽象类方法:使用抽象类类定义父代服务类,然后再开发派生类来改写(override)父代抽象类提供的实现服务,代表:c/c++ framework.
使用接口来代替抽象类:代表object pascal;
2.占位法(place hold):父类的一些虚拟方法被实现为空白的函数而不声明为抽象方法,
代表:VCL Framwork TCanvas.CreatHandle;
3.逐渐增加法:代表VCL Framwork中 TControl的构造函数就使用了逐渐增加法,在使用了inherited关键字嗲用父类的构造函数之后,派生类才开始加入自定义的实现程序代码。
4三明治手法;代表TControl的ReadSTate便使用了三明治设计手法,在Tcontrol对象中需要先定义csReadingState状态,才能使用inherited调用父代的实现。
5.覆写父类实现法
VCL Framework中有数种不同的覆写方式,派生类中完全重新声明方法而隐藏了父代的实现,这个覆写方式会由delphi的编译器产生警告信息。另一种覆写方式
6.Bootstrap设计法
代表:VCL 中 TCanvas和TControlCanvas;