首页 > 代码库 > 面向对象--封装
面向对象--封装
隐藏/封装(encapsulation)
例如:只能手机只有一个按键,可以提供给用户简单的操作,而不用去考虑内部结构和如何实现。
需要让用户知道的暴露出来,不需要让用户了解的全部隐藏起来,这就是封装。
设计程序追求的是“高内聚,低耦合”。
高内聚:就是类的内部数据操作细节自己完成,不允许外部干涉。
低耦合:仅提供少量的方法给外部使用。
封装的意义:
1.便于调用者的使用
2.良好的封装,便于修改内部代码,提高可维护性。
3.良好的封装,可进行数据完整检测性,保证数据有效性。
使用访问控制符,实现封装
范围越来越大
|
同一个类 |
同一个包中 |
子类 |
所有类 |
private |
* |
|
|
|
default |
* |
* |
|
|
protected |
* |
* |
* |
|
public |
* |
* |
* |
* |
访问权限:
public(公开的):可以被项目中所有类访问。
protected(受保护的):可以被这个类访问,同一个包中所有类访问,被它子类(同一包中或者不同包中)访问。
默认:本类中可以访问,同包下其他类可以访问。
private:仅本类中可以访问。
封装的使用细节
一般使用private(除非本属性确定会让子类继承),提供相应的get/set方法来访问相关属性,这些方法通常是public,从来提供对属性的读写操作。(boolean变量的get方法用 is开头)。
面向对象--封装
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。