zoukankan      html  css  js  c++  java
  • 封装

    1.面向对象三大特性

    • 封装性
    • 继承性
    • 多态性

    2.什么是封装

    • 封装性就是隐藏实现细节,仅对外公开接口。

    3.为什么要进行封装?

    • 以下代码存在的问题?
    // 1成员变量是public的,也就是公开的,我们不能控制外界如何赋值, 外界有可能赋值一些脏数据
    @interface Gun : NSObject
    {
        @public// 公开成员变量
        int _bulletCount;// 子弹数量
    }
    @end
    
    // 可以利用封装来解决这个问题
    // 封装:是指隐藏对象的属性和实现的细节,仅对外提供公共的访问方法
    • 类是数据与功能的封装,数据就是成员变量,功能就类方法或对象方法

    • 对数据的封装,也就是对成员变量的封装

    • 不封装的缺点:当一个类把自己的成员变量暴露给外部的时候,那么该类就失去对该成员变量的管理权,别人可以任意的修改你的成员变量。

    • 封装就是将数据隐藏起来,只能用此类的方法才可以读取或者设置数据,不可被外部任意修改是面向对象设计本质。这样降低了数据被误用的可能性 ,提高代码的灵活性!

    4.封装的好处

    • 好处

      • 将变化隔离
      • 提高安全性
    • 原则

      • 将不需要对外提供的内容都隐藏起来,把属性都隐藏,提供公共的方法对其访问
  • 相关阅读:
    Windows各个文件夹介绍
    Zabbix使用外部命令fping处理ICMP ping的请求
    QT 样式表实例
    QT 样式表基础知识
    cocos2d-js入门一
    try throw catch typeid
    cocos2d-x入门三 分层设计框架
    cocos2d-x入门二 helloworld实例运行与创建
    cocos2d-x入门一
    批量操作QT UI中的控件
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6542678.html
Copyright © 2011-2022 走看看