Encapsulation就是把抽象出的数据(属性)和对数据的操作(方法)封装在一起,数据被保护在内部,程序的其他部分只有通过被授权的操作(方法),才能对数据进行操作。
隐藏对象的属性和实现细节,仅对外提供公共访问方式。
? 隐藏实现的细节
? 便于使用。
? 提高重用性。
? 提高安全性,可以对数据进行验证。
将属性进行私有化private(不能直接修改属性)
提供一个公共的set方法,用于对属性判断并赋值
public void setXxx(类型 参数名){
//加入数据验证的业务逻辑
属性 = 参数名;
}
提供一个公共的get方法,用于获取属性的值
public 数据类型 getXxx(){
//权限判断
return xx;
}
可以在IDEA使用快捷键alt + insert
快速完成set和get
Java规定的4种权限(从小到大排列):private、缺省(前面没有权限修饰符的就是缺省)、protected、public
4种权限可以用来修时类及类的内部结构:属性、方法、构造器、内部类
具体的:4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类;修饰类的话,只能使用缺省、public
public:表示紧随其后的元素对任何人都是可用的
private:表示除类型创建者和类型的内部方法之外的任何人都不能访问的元素(类型就是类)
protected:与private作用相当,差别仅在于继承的类可以访问protected成员,但是不能访问private成员
默认的访问权限:当没有使用前面提到的任何访问指定词时,它将发挥作用,这种权限通常被称为包访问权限。在这种权限下,类可以访问同一个包(库构件)中的其他类的成员,但是在包之外,这些成员如同指定了private一样。
总结封装性:Java提供了4种权限修饰符来修饰类和类的内部结构,体现类及类的内部结构在被调用时的可见性的大小。
属性age的-号就是私有的意思(private)
原文:https://www.cnblogs.com/ffforward/p/15159641.html