5.3 类 的 封 装

5.3 类 的 封 装

在例5-2中定义的Rectangle类虽然可以表示矩形的长、宽及计算面积,但类的声明和使用不符合面向对象的基本思想,主要表现在如下两方面:

• 没有对类中的成员变量length、width和类中成员方法设置访问权限。

• 直接方式访问成员变量。

这种方式使得在类中与在类之外访问类成员没有区别,都可以任意修改类中成员变量,调用类中定义的方法对数据进行操作。采用如r1.length的形式直接对Rectangle类中的成员变量进行操作,使对象处于一种具有潜在危险的不稳定状态。

因此,希望有一个更好的符合面向对象程序设计思想的解决办法,这就是类的封装原则。在一个类中定义的变量由该类自身进行操作,不希望别的类对类中变量进行操作,类与类之间可以声明一些公有的方法提供其他类调用。

面向对象技术的三个核心特性是:封装、继承和多态性。封装是面向对象技术中的一个重要概念,是一种信息隐藏技术,它体现了面向对象程序设计的思想。