b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

pascal 视频教程_pascal和basic_pascal选择排序(76)

电脑杂谈  发布时间:2016-12-28 07:02:37  来源:网络整理

begin

SomeObject := T2.Create;

SomeObject.Act; // 调用T1.Act

end;

Reintroduce(重新引入)

reintroduce指示字告诉编译器,当隐藏一个先前声明的虚方法时,不给出警告信息。比如,procedure DoSomething; reintroduce; // 父类也有一个

当要使用新方法隐藏继承下来的虚方法时,使用reintroduce指示字。

Abstract methods(抽象方法)

抽象方法是虚方法或动态方法,并且在声明它的类中没有实现,而是由它的派生类来实现。声明抽象方法时,必须在virtual或dynamic后面使用abstract指示字。比如,

procedure DoSomething; virtual; abstract;

只有当抽象方法在一个类中被覆盖时,你才能使用这个类或它的实例进行调用。

Overloading methods(重载方法)

一个方法可以使用overload指示字来重新声明,此时,若重新声明的方法和祖先类的方法具有不同的参数,它只是重载了这个方法,并没有隐藏它。当在派生类中调用此方法时,依靠参数来决定到底调用哪一个。

若要重载一个虚方法,在派生类中重新声明时使用reintroduce

- 104 - DoSomething方法指示字。比如,

Classes and objects

type

T1 = class(TObject)

procedure Test(I: Integer); overload; virtual; end;

T2 = class(T1)

procedure Test(S: string); reintroduce; overload; end; ...

SomeObject := T2.Create; SomeObject.Test('Hello!'); // 调用T2.Test SomeObject.Test(7);// 调用在一个类中,你不能以相同的名字公布(published)多个重载的方法,维护的成员具有不同的名字。

type

TSomeClass = class published

function Func(P: Integer): Integer;function Func(P: Boolean): Integer

// 错误...

作为属性读写限定符的方法不能被重载。

实现重载的方法时,必须重复列出类声明时方法的参数列表。关于重载的更多信息,请参考procedures and functions。

Constructors(构造函数)

构造函数是一个特殊的方法,用来创建和初始化一个实例对象。声明一个构造函数就像声明一个过程,但以constructor开头。比如:

constructor Create;

constructor Create(AOwner: TComponent);

构造函数必须使用默认的register调用约定。虽然声明中没有指定返回值,但构造函数返回它创建的对象引用,或者对它进行调用的对象(的引用)。

一个类的构造函数可以不止一个,但大部分只有一个。按惯例,构造函数通常命名为要创建一个对象,在类(标志符)上调用构造函数。比如,MyObject := TMyClass.Create;

它在堆中为对象分配内存,并设置所有的有序类型的字段为使所有的字符串类型的字段为空;接下来,构造函数中指定的其它动作(命令)开始执行,通常,初始化对象是基于传给构造函数的参数值;最后,构造函数返回新创建的对象的引用,此时它已完成了初始化。返回值的类型与调用构造函数的类相同。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23665-76.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...