zoukankan      html  css  js  c++  java
  • 面向对象

    面向过程:

       把大象装冰箱步骤;   打开冰箱→把大象放到冰箱→关上冰箱

    面向对象:

      冰箱对象:   开关门动作

      大象对象:   进入冰箱的动作

      执行对象: 负责操作冰箱和大象

    三大特性:

      封装:

        1. 数据安全: 一个类就是一个封装, 一个方法就是一个封装; 在内部可以隐藏自己的实现; 只对外部公开需要公开的内容;

        2. 稳定:  只要保证接口不变, 内部修改, 不会影响外部调用

        3. 提高重用性: 

        4. 分工合作, 职责分明: 划分不同的模块, 外部公开统一的接口, 相互间进行调用;方便构建大型复杂的系统

      继承: 

        1. 去掉重复代码

        2. 可以实现多态: 基类可以代替任何子类实现;

      多态:

        1. 相同的操作, 不同的实现: 比如方法的重载, 接口+实现类, 抽象+实现类

        2. 抽象类和接口都是运行时多态

    如何选择抽象类和接口:

      抽象类:  父类+约束; 可以完成通用实现; 单根性;  描述 is a

      接 口:  纯粹的约束; 必须下端自己实现;  描述 Can do

      //IBaseService--BaseService--UserService

    抽象方法和虚方法:

      需方使用virtual标记, 带有默认实现;

      抽象方法使用abstract标记, 不允许带有任何实现;

      如果子类覆写的时候, 标记了sealed, 则接下来不可以继续覆写

  • 相关阅读:
    (04)-Python3之--字典(dict)操作
    word2vec简单介绍
    基于websocket爬虫
    Python数据结构之链表(1)-->单链表
    词云wordcloud
    Neo4j--第一章
    AHP(层次分析法) 附Python示例代码(觉得还可以的,帮忙点个赞,谢谢)
    几种归一化方法(Normalization Method)python实现
    EM算法之Python
    通俗易懂的EM
  • 原文地址:https://www.cnblogs.com/wxylog/p/9602434.html
Copyright © 2011-2022 走看看