zoukankan      html  css  js  c++  java
  • day 21

    day 21 组合 封装

    01 组合

    1. 一个类产生的对象是另一个对象的属性
    2. 为了减少代码量

    02 封装

    1. 什么是封装
      1. 把一堆属性(特征与技能)封装到一个对象中。
      2. 可以通过(对象.属性)方式调用该属性
    2. 为什么要封装
      1. 通过(对象.属性)简化操作流程,方便存取
    3. 如何封装
      1. 在类内部定义一堆属性(特征;变量>数据属性,技能;函数>方法属性)
      2. 通过对象.属性=属性值
    4. 访问限制机制
      1. 在类内部定义的以(__)开头的属性,不能通过对象.属性的方式直接调用
      2. 把隐私和不能被外部轻易调用的属性,不可被直接调用
      3. 对数据获取的逻辑更加严谨,进而保证了数据的安全
      4. 在类中定义一个访问接口,让用户通过return方式获取但不能更改,内部可以进行逻辑判断
      5. 在类中定义一个修改接口,让用户通过调用接口方式修改属性值,内部可以进行逻辑判断
      6. 在python中不会强制内绝对不能访问,类内部的__属性会变成_类名__属性的形式,同过对象.变形名进行访问
    5. property;
      1. python内置的一个装饰器,主要是给类内部的方法使用
      2. 将类内部的方法隐藏起来,
      3. 将方法的调用方式,改为不需要括号
      4. 不能对被装饰过的方法属性修改值(应为它还是方法而不是数据)
      5. 修改和删除的方法
    6. 多态
      1. 多态指同一事物的多种形态,多态性,继承就是多态的一种表现形式
      2. 让多种不同类型的对象,在使用相同内容功能的情况下,调用同一种名字的方法
      3. 父类;定义一套统一的调用标准,子类;遵循父类的统一标准
      4. 多态的目的是为了统一调用标准
    7. 抽象类;abc模块
      1. 在python中,不会强制子类使用父类的标准,abc实现了这个功能
  • 相关阅读:
    Newtonsoft.Json 处理多态类型的反序列化
    33条C#和.NET经典面试题目及答案
    转:原码,反码,补码详解
    使用OpenXML操作Office文档
    WPF的Binding学习笔记(二)
    WPF的Binding学习笔记(一)
    M6: 使用摄像头(CameraCaptureUI)
    M5: 使用StorageFile
    NYOJ144_小珂的苦恼_C++
    搜索水题四连发_C++
  • 原文地址:https://www.cnblogs.com/luocongyu/p/11668794.html
Copyright © 2011-2022 走看看