专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Delphi教程 » delphi创建类:DELPHI类的封装 »正文

delphi创建类:DELPHI类的封装

来源: 发布时间:星期三, 2008年9月24日 浏览:61次 评论:0
在前面的例子中定义了一个student类,定义时如没有设置对类中数据和方法的访问限制,可以在类之外调用类中定义的方法对数据进行操作。使用stl.name的访问形式,可以直接对类中数据进行操作。这种用法虽然简单可行,但与使用全局变量一样,会引起较多问题。
首先,全局变量可在程序的任何部位对数据进行访问,一旦某个全局变量发生改变就会影响所有程序。其次,当改变类中数据类型时,程序调用处的代码也必须相应修改,使得程序维护困难。再者,用户编程时必须清楚类中数据的定义,而且是在类之外编写对类中数据操作的程序。这样就违背了面向对象程序设计的思想。
因此,更好的符合面向对象程序设计思想的解决办法,是将数据和对数据进行的操作方法封装在类中。
封装(encapsulation)的含义是,把类看成一个黑匣子,上面有一小部分可视区,叫做类的接口,其中定义了一些用于供其他程序访问该类中数据的方法,而类中的数据及大部分代码都是隐含的。类的封装有以下特点:
·用户看不见、也不需要知道类中定义了哪些内部数据,因而无法直接对数据进行访问。
·通过调用对象方法来访问类中数据,用户不必关心方法的实现细节。即使改变了类中数据的定义,只要方法名及参数不改变,就不会对使用该类的程序产生任何影响。
·类的内部数据不能由类的用户直接访问。
显然前面的student类的定义违反了封装的原则,因为用户可以访问该类的任何内部数据。
Delphi中通过设置类中数据和方法的访问权限,来实现封装的特性。
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: