WEB开发网
开发学院软件开发Delphi 菜鸟入门之浅谈函数重载和多态的区别 阅读

菜鸟入门之浅谈函数重载和多态的区别

 2006-02-04 13:34:19 来源:WEB开发网   
核心提示:函数重载是和多态不一样的,函数重载的例子表达式如下:function Foo(i:Integer):string;overload;function Foo(s:string):string;overload;通过传不同的参数,菜鸟入门之浅谈函数重载和多态的区别,选择执行不同函数执行,而多态是通过把子类对象赋给父类对象

函数重载是和多态不一样的,
函数重载的例子表达式如下:
function Foo(i:Integer):string;overload;
function Foo(s:string):string;overload;
通过传不同的参数,选择执行不同函数执行。

而多态是通过把子类对象赋给父类对象(大逆不道?!:)),
让父类对象具有子类对象的方法,例子表达式如下:
TParent=class(TObject)
PRocedure Draw;virtual;
end;

TChild=class(TParent)
procedure Draw;override;
procedure ShowHierarchy;virtual;
end;

Parent:=Child;

Parent.Draw;//执行子类的Draw;

这就是我们为什么总是看见sender:TObject的参数,
就是把子类对象如1个Button赋给父类(Tobject)对象的结果。

Tags:菜鸟 入门 函数

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接