封装要求我们控制好类属性的访问权限:
1.将类对象的所有属性都设置为private访问权限;
2.为类对象的属性提供getter方法时需要考虑数据的敏感性,是否可以被随意访问;
3.类对象属性的初始化,是否可以被随意设置,例如:
class Test{
private Date createTime;
private int num;
}
其中createTime属性是数据的产生时间,这个时间如果是被触发时就被设置的,那么我们可以在它的初始化方法中自行初始化,而不依赖于外来的参数,并且也不会提供setter方法给外部进行修改;
public class Test{
private Date createTime;
private int num;
public Test(int num) {
this.num = num;
this.createTime = new Date();
}
public void setNum(int num) {
this.num = num;
}
public int getNum() {
return num;
}
public Date getCreateTime() {
return createTime;
}
}