封装:是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
好处:
- 将变化隔离
- 便于使用
- 提高重用性
- 提高安全性
- 将不需要对外提供的内容都隐藏起来。
- 把属性都隐藏起来,提供公共方法对其访问。
public class Demo18 {
public static void main(String[] args){
Person a=new Person();
a.setAge(23);
}
}
class Person{
/*
*private:私有,权限修饰符:用于修饰类中的成员(成员变量,成员函数)
*私有只能在本类中有效。
*
* 下面将age私有化以后,类以外即使建立了对象也不能直接访问。
* 但是人应该有年龄,就需要在Person类中提供对应访问age的方式。
*
* 之所以对外提供访问方式,就因为可以在访问方式中加入逻辑判断等语句。
* 对访问的数据进行操作,提高代码的健壮性。
*/
private int age;
public void setAge(int a){
if(a>0 && a<140){
age=a;
speak();
}
else {
System.out.println("非法值!");
}
}
public int getAge(){
return age;
}
void speak(){
System.out.println(age);
}
}
注意:私有仅仅是封装的一种表现形式,是最小权限。