文件名称:定义新类-gb∕t 21050-2019 信息安全技术 网络交换机安全技术要求
文件大小:1.19MB
文件格式:PDF
更新时间:2024-06-29 06:59:37
Delphi 组件
2.1 定义新类 组件编写者和应用程序开发人员的区别是组件编写者创建新类,而应用程序开发人员操 作类的实例。 类本质上就是类型。作为一个程序员,总是用类型和实例工作,即使你不使用这个术语。 例如,创建某类型的变量,就象 Integer。类通常比简单的数据类型更复杂,但是它们的工 作方式是一样的:通过给相同类型的实例分派不同的值,可以执行不同的任务。 例如,创建一个窗体,它包含二个按钮:一个有标签‘确认’,另一个有标签‘取消’, 这是很平常的事。每一个都是 TButton 类的实例,但是,通过指派不同的值给它们的 Caption 属性,并分派不同的处理程序给它们的 OnClick 事件,就会使这二个实例产生不同的行为。 2.1.1 派生新类 派生新类有二个理由: 改变类的缺省值,避免重复 给类添加新能力 在这二种情况的任一情况下,目的都是创建可重用的对象。如果你用重用的思想设计组 件,就可以节省以后的工作量。给类可用的缺省值,但是允许它们被定制。 2.1.1.1 改变类的缺省值以避免重复 大部分程序员都设法避免重复。因此,如果你发现自己在反复地重写相同的代码行,就 把这些代码放在子程序或函数内,或者构建一个可以在很多程序中使用的子程序库。对组件 也做相同的推理。如果你发现自己正改变相同的属性或者进行相同的方法调用,就可以创建 一个新组件,由它缺省地做这些事情。 例如,假设每次创建一个应用程序,都会添加一个对话框来执行特定的操作,尽管每次 重建这个对话框并不困难,但也是不必要的。可以一次性设计这个对话框,设定其属性,并 安装一个关联它的包装器组件在组件面板上。通过使这个对话框成为可重用的组件,就不仅 消除了重复性的作业,而且促进了标准化,并减少了每次重建对话框时出现错误的可能性。 第 9 章“修改已有组件”给出一个改变组件缺省属性的例子。 注释 如果只想修改已有组件中已发布的属性,或者为组件或组件组保存特定的事件处理 程序,通过创建‘组件模板’,或许能够更容易地完成这个任务。