封装:封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。
封装的意义:封装的意义在于保护或者防止代码(数据)被我们无意中破坏。在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改。良好的封装能够减少耦合。可以对成员进行更精确的控制。
1. 保护数据成员,不让类以外的程序直接访问或修改,只能通过提供的公共的接口访问==>数据封装。
2. 方法的细节对用户是隐藏的,只要接口不变,内容的修改不会影响到外部的调用者==>方法封装。
3. 当对象含有完整的属性和与之对应的方法时称为封装。
4. 从对象外面不能直接访问对象的属性,只能通过和该属性对应的方法访问。
5. 对象的方法可以接收对象外面的消息。
在上一篇面向对象中提到,面向对象就是将所有事物都抽象成类,用对象来来调用类中的方法。(也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作)
而类封装了属性和行为。属性(信息)用变量表示,行为(会做什么事)用函数表示。
函数封装了逻辑代码。