面向对象的特征一:封装与隐藏

* 面向对象的特征一:封装与隐藏 3w: what? why? how?
*
* 1.问题的引入?
* 我们在创建了一个类的对象以后,通过"对象.属性"的方式,可以给对象的属性赋值。对此属性的赋值,是限制的,比如:数据类型和
* 数据类型储值范围的限制。但是,在实际问题中,还通过需要额外的限制。同时这些额外的限制,不可能在属性的声明中加上限制逻辑。
* 那么,我们只能考虑通过方法,对属性的赋值进行额外的限制。同时,我们必须禁止再直接通过"对象.属性"的方式,对属性进行赋值。
*
* 2.封装性的体现:(狭义上的体现)
* 私有化(private类的属性xxx,)同时,提供公共的(public设置(setXxx())和获取(getXxx())的方法
*
* 3.封装性的体现:(广义上的体现)
* 3.1 java规定的4种权限修饰:(从小到大 private 缺省 protected public
* 3.2 java规定的4种权限可以用来修饰类及类的内部结构:属性、方法、构造器、内部类。
* 3.3 具体来讲:4种权限都可以用来修饰类的内部结构:属性、方法、构造器、内部类。
* class 只能使用缺省 或者 public 来修饰类
*/

原文地址:https://www.cnblogs.com/loushiqiang/p/7252943.html