delphi中inherited是怎么用的阿

如题所述

第1个回答  推荐于2016-10-11
inherited就是继承执行父类的方法,给你举个简单的例子:
TA = class(TObject)
private
FCount: Integer;
public
constructor Create(AOwner: TComponent); override;
procedure AddCount(ACount: Integer); virtual;
property Count: Integer read FCount write FCount;
end;
TB = class(TA)
public
procedure AddCount(ACount: Integer); override;
end;
......

{ TA }
procedure TA.AddCount(ACount: Integer);
begin
inc(FCount, ACount);
end;
constructor TA.Create(AOwner: TComponent);
begin
inherited;
FCount := 0;
end;
{ TB }
procedure TB.AddCount(ACount: Integer);
begin
inherited; //这个就是调用父类的 AddCount函数
Count := Count + 100; // 假如在这里再增加值
end;

.....
var
b: TB;
begin
b := TB.Create(nil);
b.AddCount(20);
// 当调用b的AddCount时,会先执行inherited;就是调用父类同名(被重写)过程,
// 此时,Count为20,然后再执行第二句Count := Count + 100;
// 此时Count为120。如果TB.AddCount的函过程里没有inherited;就不会执行父类的同名过程, 那么最终Count的值为100。
end;本回答被提问者和网友采纳

delphi中inherited是怎么用的阿
继承一个类的,并覆盖了类成员的虚方法,在这个方法里面用 Inherited来调用父类的同名方法。

delphi中inherited的详细用法。。
除了在方法中使用外,`inherited`关键字还可以用于访问继承的属性。如果子类中定义了与父类相同的属性,并且想要访问父类的属性而不是子类的属性时,可以使用`inherited`关键字明确指定。这在属性读写器中尤其有用。例如:delphi property TChildClass.SomeProperty: TSomeType read inherited SomeProperty; ...

delphi中inherited是怎么用的阿
inherited; \/\/这个就是调用父类的 AddCount函数 Count := Count + 100; \/\/ 假如在这里再增加值 end;...var b: TB;begin b := TB.Create(nil);b.AddCount(20);\/\/ 当调用b的AddCount时,会先执行inherited;就是调用父类同名(被重写)过程,\/\/ 此时,Count为20,然后再执行第二句Count :=...

Delphi中inherited的详细用法。。
Delphi中的'inherited'关键字是一个强大工具,它允许子类调用并扩展其祖先类的成员函数。当你在子类中使用'inherited'时,实际上是让子类的函数在执行时默认调用相应于该名称的祖先类函数。如果函数没有参数,就像祖先类的函数Create(AName:string)一样,那么子类直接使用'inherited Create(AName)'调用即可...

Delphi中inherited的详细用法。。
inherited就是调用祖先类的函数,如果不带参数就是默认调用同名函数 如果带参数则表明子类中的函数个数可能比祖先类要多取其中的几个参数传过去 例如 祖先类有个函数 Create(AName:string);子类有个函数 Create(AName:string;AComponent:TObject);override;那么子类的Create函数内就可以这样调用祖先类:p...

delphi 中 inherited 为什么在程序块一开始就调用了?
inherited Create(AOwner); 和直接写inherited有区别吗 有区别,inherited Create是指定调用父类的Create方法,当然你也可以inherited Destory等等,如果直接写inherited则默认以本方法名在父类中调用

delphi中关键字inherited的理解
这段话已经能够说的很清楚了啊。如果有同名同参数的父类方法,单独用inherited;就是继承父类的同名同参数方法。如果inherited XXX(..), 说明父类有了同名的重载方法,你指定继承其中的一个方法。

delphi调用父类同名函数返回值
您要问的是怎么用delphi调用父类同名函数返回值吗?有以下办法。1、首先在子类中使用“inherited”关键字。2、其次在关键字中调用父类中的GetResult函数。3、最后将其返回值赋值给Result变量即可。

delphi 中双击TButton控件时自动生成一个inherited
你的窗体继承了另一个窗体, 就会是这种情况 inherited用法 procedure button1.onclick(sender..);begin inherited;end;有了inherited就会执行父窗体中button1.onclick(sender..);方法的代码了

delphi关于inherited的问题
这一句 只是 继承父类的方法,也就是说你的程序 大量运用了继承,这没什么。

相似回答