封装性的概念与操作方法
- 封装性是面向对象思想的三大特征之一(其他两个特性是继承和多态)。
- 封装就是隐藏实现细节,仅对外提供访问接口。
- 封装有:属性的封装、方法的封装、类的封装、组件的封装、模块化封装、系统级封装等等。
- 如果属性没有进行封装,那么在本类之外创建对象后,可以直接访问属性。
- 对于属性或方法来说,使用关键字private(访问权限修饰符)可进行封装,private表示私有的,私有的属性或者方法,只能在本类中访问。
- 想要在类外部访问私有属性,需要提供公有的方法进行间接访问。
成员变量和局部变量
-
在类中的位置不同
成员变量:在类中定义
局部变量:在方法中定义或者是方法中的参数 -
在内存中的位置不同
成员变量:在堆内存
局部变量:在栈内存 -
生命周期不同
成员变量:随着对象的创建而存在,随着对象的销毁而消失
局部变量:随着方法的调用而存在,随着方法的调用完成而消失 -
初始化值不同
成员变量:有默认初始化值,引用类型默认为null
局部变量:没有默认初始化值,必须定义,赋值,才能使用。
封装的好处
- 模块化
- 信息隐藏
- 代码重用
- 插件化易于调试
- 具有安全性
封装的缺点
影响效率