//这个类中的两个字段没有封装
TMyClass1 = class
FName: string;
FAge: Integer;
end;
//这个类中的两个字段封装了, 外部不能读写
TMyClass2 = class
private
FName: string;
FAge: Integer;
//public
end;
//那怎么读写? 用属性啊
TMyClass3 = class
private
FName: String;
FAge: Integer;
procedure SetAge(const Value: Integer);
procedure SetName(const Value: String);
published
property Name: String read FName write SetName;
property Age: Integer read FAge write SetAge;
end;
{
现在 TMyClass3 中的两个字段: FName、FAge 和两个方法: SetAge、SetName
都被封装在私有区(private)内, 不允许外部读写, 只能是内部使用.
不过, private 的封装在本单元内是无效的!
现在好了, 有了 strict 标识符.
}
//这个封装好了, 在 private 前加了 strict ; 现在除了自己谁也访问不了私有区.
TMyClass4 = class
strict private
FName: String;
FAge: Integer;
procedure SetAge(const Value: Integer);
procedure SetName(const Value: String);
published
property Name: String read FName write SetName;
property Age: Integer read FAge write SetAge;
end;
{封装的目的就是隐藏实现细节、保证数据安全}
理解 Delphi 的类(六) - 认识类的封装
原创
©著作权归作者所有:来自51CTO博客作者JLee79的原创作品,请联系作者获取转载授权,否则将追究法律责任
posted on 2008-01-11 02:26 万一 阅读(5833) 评论(5) 编辑 收藏
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
封装一个工具类,拒绝重复代码!
封装一个工具类,拒绝重复代码!
List 字段 工具类