目录
什么是封装?:
- 生活中比如 ATM机,笔记本电脑,手机,小轿车等。封装就是将过程和数据用一个外壳隐藏起来。对数据的的访问只能通过封装者提供的接口进行访问。
- 封装就是把对象所有的属性组成部分都组合在一起,封装实际上就是使用方法,和权限修饰符,将类的中的某些组成部分隐藏起来。控制 调用者对类中的数据的修改和访问数据的权限程度。
- 适当的封装可以让程序更容易理解与维护,也让程序的安全性得到了加强
- 在你所达的权限范围之内 不能访问的 都叫做封装!
Java中怎么实现封装?
- 将属性私有化,被private关键字修饰 ---》一旦加入了这个权限修饰符,调用者就不能随意的获取这个属性。
- 提供除了private其他的权限访问修饰符 修饰方法让调用者来可以 访问or使用
- 即使调用通过方法来访问属性了,也不能随意的访问,可以在设置属性的方法出加入限制条件!
代码如下:
public class Person {
// 年龄私有化
private int age;
// 构造器
public Person(int age) {
this.age = (age >= 150 || age <= 0) ? 18 : age;
}
// 向外提供设置方法
public void setAge(int age) {
// 如果年龄不符合要求
this.age = (age >= 150 || age <= 0) ? 18 : age;
}
// 向外提供 获取属性方法
public int getAge() {
return this.age;
}
}
class Test {
public static void main(String[] args) {
System.out.println("new Person(151).getAge() = " + new Person(151).getAge());
}
}
test:
封装的好处:
- 高内聚:即 类的内部数据和组成部分的操作细节由自己完成,不允许外部干涉。
- 低耦合:即 仅对外暴露少量的接口用于调用,写好想调用就调用,不想调用就不调用,没有说非要调用。
- 封装的核心设计思想:合理隐藏,合理暴露:即隐藏 类 内部的复杂性,只对外公开简单的接口,便于调用者调用,从而提高代码可扩展性,可维护性,简单的来说,就是把该隐藏的隐藏起来,该暴露的暴露出来。
- 封装的好处:提高代码的安全性,健壮性。