封装可以隐 藏内部实现细节,站在对象外部是看不到内部复杂结构的,对外只提供了简单的安全的操作入口,所以封装之后,实体更安全了。
class Person{
private int age;
public int getAge(){
return age;
}
public void setAge(int nianLing){
if(nianLing < 0 || nianLing > 150){
//设置关卡保证数据安全
System.out.println("对不起,你输入的年龄值不合法!!!");
return;
}
age = nianLing;
}
}
public class PersonTest{
public static void main(String[] args){
Person p1 = new Person();
//这样是无法访问的,因为数据被私有化了
//System.out.println(p1.age);
int nianLing = p1.getAge();
System.out.println(nianLing);
//上面两行代码和这行代码等效
System.out.println(p1.getAge());
p1.setAge(25);
System.out.println(p1.getAge());
p1.setAge(166);
System.out.println(p1.getAge());
}
}
运行结果: