第六十九章 方法关键字 - PlaceAfter
指定此方法在为类生成的例程中相对于其他方法的顺序。
用法
要指定类编译器应该将此方法放在它为类创建的例程中列出的方法之后,请使用以下语法:
Method name(formal_spec) As returnclass [ PlaceAfter = methodlist ]
{ //implementation }
其中methodlist
是单个方法名或用逗号分隔的方法名列表,用括号括起来。
详解
此关键字指定类编译器应该将此方法放在它为类创建的例程中列出的方法之后。此关键字用于极少数需要控制类编译器为方法生成代码的顺序的情况。
默认
如果省略此关键字,类编译器将使用其正常逻辑来确定它生成的例程中方法的顺序。
第七十章 方法关键字 - Private
指定此方法是否为私有方法(只能由该类或其子类的方法调用)。
用法
要指定该方法为私有方法,请使用以下语法:
Method name(formal_spec) As returnclass [ Private ]
{ //implementation }
否则,请省略此关键字或将该词放在该关键字之前。
详情
私有类成员只能由同一类(或其子类)的其他成员使用。请注意,其他语言经常使用protected
这个词来描述这种可见性,使用private
这个词来表示不可见子类。
这个关键字是继承的,但是你可以在子类中改变它的值。
默认
如果省略此关键字,则此方法不是私有的。
第七十一章 方法关键字 - ProcedureBlock
指定此方法是否为过程块。仅当方法是用ObjectScript编写的时才适用。
用法
类定义指定默认情况下类中的方法是否为过程块。要覆盖该默认设置并指定给定方法为过程块,请使用以下语法:
Method name(formal_spec) As returnclass [ ProcedureBlock ]
{ //implementation }
或(等效):
Method name(formal_spec) As returnclass [ ProcedureBlock=1 ]
{ //implementation }
否则,若要指定给定方法不是过程块,请使用以下语法:
Method name(formal_spec) As returnclass [ ProcedureBlock=0 ]
{ //implementation }
详解
此关键字指定ObjectScript
方法是过程块。
在ObjectScript中,方法可以实现为过程块,也可以不实现。过程块强制变量作用域:方法不能看到其调用方定义的变量。新的应用程序使用过程块;非过程块的存在是为了向后兼容。
默认
如果省略此关键字,则使用类级ProcedureBlock
关键字的值。
第七十二章 方法关键字 - PublicList
指定此方法的公共变量。仅当方法是用ObjectScript
编写并且是过程块时才适用。
用法
要指定方法的公共变量列表,请使用以下语法:
Method name(formal_spec) As returnclass [ PublicList = variablelist ]
{ //implementation }
其中PublicList
可以是单个变量名,也可以是逗号分隔的变量名列表,用圆括号括起来。
详解
仅当方法是用ObjectScript编写并且是过程块时,才使用此关键字。在ObjectScript中,公用列表指定范围为公共变量的变量列表。公共变量对于从定义公用列表的方法调用的任何方法都是可见的。
默认
如果省略此关键字,则该方法没有公共变量。