java封装
什么是封装
封装就是把该隐藏的隐藏起来,把该暴露的暴露出来。针对封装记住一句话:成员属性要私有(private),成员属性用get / set 方法访问和赋值。
封装的优点
- 提高程序的安全性,保护数据
- 隐藏代码的实现细节
- 系统可维护增加了
- 统一接口(getter和setter方法),对成员变量进行了更精准的控制
封装代码实例
/**
* 学校名称
*/
public class School {
//成员属性用private修饰
//学校名称
private String name;
//学校地址
private String address;
//public方法是外部类访问该类成员变量的入口
public String getName() {
return name;
}
public void setName(String name) {
//this 关键字是为了解决实例变量(private String name)和局部变量(setName(String name)中的name变量)之间发生的同名的冲突
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
}
上述代码private让成员变量只能在本类被访问,不能在外部访问,隐藏了成员变量。然后为每个成员变量提供getter和setter方法供给外面的类访问和修改成员变量。这样做就实现了不可以直接访问School类,而是通过严格的接口控制。隐藏了代码的实现细节,增强了系统的可维护性,体现了良好的封装性。
注释:java中的访问修饰符
- private 在当前类中可访问
- default 在当前包内和访问
- protected 在当前类和它派生的类中可访问
- public 公众的访问权限,谁都能访问