类的封装
2016-07-21 22:58
288 查看
所谓封装,是指把细节隐藏在内部,只把函数接口暴露在外。
封装的是什么?数据,逻辑
在C/struct时代,由于struct内部是可以自由访问的,所以无法完全地实现封装。(用户可能不小心破坏内部数据)
在引入class和访问修饰符后,就可以实现完全地封装。
首先明确:什么东西想让用户看到,什么东西不想让用户看到。
1. 把所有的成员变量设为private
2. 添加函数接口,供外部操作该对象
(getter/setter,及其他功能接口)
eg1
用访问修饰符可以实现类的封装
很明确告诉用户,哪些是可以调用,哪些不能调用的
public:
private:
封装的是什么?数据,逻辑
在C/struct时代,由于struct内部是可以自由访问的,所以无法完全地实现封装。(用户可能不小心破坏内部数据)
在引入class和访问修饰符后,就可以实现完全地封装。
首先明确:什么东西想让用户看到,什么东西不想让用户看到。
1. 把所有的成员变量设为private
2. 添加函数接口,供外部操作该对象
(getter/setter,及其他功能接口)
eg1
class Circle { public: void MoveTo(int x,int) { } void SetRadius(int radius) { } private:: int m_x; int m_y; int m_radius; };
用访问修饰符可以实现类的封装
很明确告诉用户,哪些是可以调用,哪些不能调用的
public:
private:
相关文章推荐
- apk签名制作
- apk签名制作
- UVa 12563
- 虚拟化三、Xen虚拟化技术2
- Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
- 数字签名是什么?
- jxl生成和解析Excel
- git工作流程
- 主题:vsftpd之虚拟用户
- poj 2752 KMP(next数组的运用)
- Objective-C & Sprite Kit太空历险记 : 3. 军官训练营——控制你的代码
- 简记:一次修复CentOS7因卸载多余内核后引起启动文件丢失及其后续问题的过程
- agios插件之监控AEP主机InBound和Awaiting数量
- 两个HashMap里面的内容是否相等?
- hdu 3870(平面图最小割转最短路)
- 关于类中定义的内部接口
- 【OpenCV笔记 12】OpenCV边缘检测之canny算子
- 多态性-运算符重载
- 笑一笑
- java-并发-解决锁竞争的问题