控制访问-gb∕t 21050-2019 信息安全技术 网络交换机安全技术要求

时间:2024-06-29 06:59:38
【文件属性】:

文件名称:控制访问-gb∕t 21050-2019 信息安全技术 网络交换机安全技术要求

文件大小:1.19MB

文件格式:PDF

更新时间:2024-06-29 06:59:38

Delphi 组件

2.3 控制访问 对属性、方法和域的访问控制有 5 个级别,也称为‘可见性’。可见性确定哪些代码可 访问类的哪些部分。通过指定可见性,就可以给你的组件定义‘接口’。 表 2.1 显示了可见性的级别,从最严格限制到最可访问: 表 2.1 对象内部的可视性级别 可见性 意义 目的 private 只有在类被定义的单元中的代码可访问 隐藏实现细节 peotected 在类和其子孙被定义的单元中的代码可访问 定义组件编写者的接口 public 所有代码可访问 定义运行时接口 automated 所有代码可访问。自动化类型信息被产生 只有 OLE 自动化 published 所有代码可访问,并在对象查看器中可用。被 保存在窗体文件中 定义设计时接口 如果只想让成员在定义它的类内部可用,就声明成员为 private。如果想让成员只在类和 其子孙内部可用,声明成员为 protected。记住,虽然成员可在其单元文件内部的任何地方可 用,但是它也只是在这个文件中的任何地方。因此,如果你在同一单元中定义了二个类,那 么这二个类就可相互访问对方的 private 方法。并且,如果你在一个不同的单元中从其祖先 派生了一个类,那么在新单元中的所有类将能够访问这个祖先的 protected 方法。 2.3.1 隐藏实现细节 作为 private 的类的声明部分,使这部分对于类单元文件以外的代码不可见。在包含声 明的单元内部,代码就好象是 public 一样,可以访问这个 private 部分。 下面的例子说明了如何把一个域声明为 private,使它对应用程序开发人员隐藏起来。源 代码清单显示了二个 VCL 窗体单元,每一个窗体都有一个其 OnCreate 事件的处理程序,它 用来给 private 域赋值。编译器只允许对窗体中被声明的域进行赋值。 unit HideInfo; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs; type TSecretForm = class(TForm) // declare new form procedure FormCreate(Sender: TObject); private // declare private part FSecretCde: Integer; // declare a private field end; var SecretForm: TSecretForm; implementation {$R *.dfm} procedure TSecretForm.FormCreate(Sender: TObject);


网友评论