什么是封装?
隐藏对象的属性及实现的具体细节,仅对外提供公共的访问方法。
封装的优点:
1.提高安全性;(直接对外暴露属性,存在安全问题,因为使用者不知道属性的限定条件)
2.提高代码的复用性;(封装好以便再次使用)
3.隔离变化。(对于使用者来说不必关心内部实现有何变化)
封装的原则:
1. 将不需要对外提供的内容都隐藏;
2. 通常都将属性隐藏起来,对外提供公共的访问方法。
简单示例:
class Person
{
/*
将属性私有化
*/
private String name;
private int age;
public Person(){};
/*
对外提供公共的访问方法
*/
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return this.name;
}
/*
这里可以对年龄进行限制,可以提高安全性
*/
public void setAge(int age)
{
if(age > 0 && age < 130)
{
this.age = age;
}
else
{
System.out.println("年龄格式不正确");
}
}
}