现在以信用卡为例简单介绍下:
public class TestEncapsulation{
public sataic void main(String[] args){
CreditCard card = new CreditCard();
System.out.println(card.password);
card.password="1234";
}
}
class CreditCard{
public String password="123456";
}
如果CreditCard类的属性password是public的访问权限,那么当信用卡丢失时,无论是谁都可以修改和获取这张信用卡的密码。所以需要进行条件限制。
public class TestEncapsulation{
public sataic void main(String[] args){
CreditCard card = new CreditCard();
card.getPassword("1234567890");当身份证号正确时才能获取卡的密码
card.setPassword("234567");设置卡的密码时只能设置为6位密码
}
}
class CreditCard{
public String password="123456";
public String getPassword(String UserId) {
if(UserId!=1234567890) return;
return password;
}
public void setPassword(String password) {
if(password.length!=6) return;
this.password = password;
}
}
现在当有人捡到这张卡时,就不能直接修改和获取卡的密码了,需要通过一定的条件才能修改和获取卡的密码。