• 面向对象:四大基本特征、七大设计原则、二十四种模式(自己面试遇见)


    面向对象的四大基本特性
    抽象:提取现实世界中某事物的关键特性,为该事物构建模型的过程。对同一事物在不同的需求下,需要提取的特性可能不一样。得到的抽象模型中一般包含:属性(数据)和操作(行为)。这个抽象模型我们称之为类。对类进行实例化得到对象。

    封装:封装可以使类具有独立性和隔离性;保证类的高内聚。只暴露给类外部或者子类必须的属性和操作。类封装的实现依赖类的修饰符(public、protected和private等)

    继承:对现有类的一种复用机制。一个类如果继承现有的类,则这个类将拥有被继承类的所有非私有特性(属性和操作)。这里指的继承包含:类的继承和接口的实现。

    多态:多态是在继承的基础上实现的。多态的三个要素:继承、重写和父类引用指向子类对象。父类引用指向不同的子类对象时,调用相同的方法,呈现出不同的行为;就是类多态特性。多态可以分成编译时多态和运行时多态。

    抽象、封装、继承和多态是面向对象的基础。在面向对象四大基础特性之上,我们在做面向对象编程设计时还需要遵循有一些基本的设计原则。

    面向对象的七大设计原则

    SOLID原则(单一职责原则、开放关闭原则、里氏替换原则、接口隔离原则和依赖倒置原则) 
    迪米特法则 
    组合优于继承原则(合成复用原则)。 
    在遵循这些面向对象设计原则基础上,前辈们总结出一些解决不同问题场景的设计模式,以四人帮的gof23最为知名。

    24种设计模式(gof23+1)
      创建型模式:
        1.简单工厂模式(不包含在gof23中)
        2.工厂模式
        3.抽象工厂模式
        4.单例模式
        5.原型模式
      创建者模式
        6.结构型模式:
        7.组合模式
        8.装饰者模式
        9.外观模式
        10.适配器模式
        11.代理模式
        12.享元模式
        13.桥接模式
      行为型模式:
        14.观察者模式
        15.策略模式
        16.状态模式
        17.中介模式
        18.模板方法
        19.命令模式
        20.备忘录模式
        21.访问者模式
        22.解释器模式
        23.迭代器模式
        24.职责链模式
    这里只是简单描述了定义和特征以及设计模式的关系,具体细节不讨论

    在面试的时候被面试官问道你知道哪些设计模式,还有单例模式是怎样的?

    单例模式这里回答了分为两种:饱汉模式和饿汉模式,我博客里面有

    这个我听老师说有个学生在面试的时候被提问到,所以还是了解记录一下
    ---------------------
    作者:hopeplus
    来源:CSDN
    原文:https://blog.csdn.net/hope900/article/details/78647466?utm_source=copy
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    PMP笔记:行政收尾工作
    PMP 笔记:WBS 词典 (含范例)
    PMP 笔记:WBS 实战 (例子)
    名义小组和德尔菲技术使用与区别
    焦点小组、名义小组和引导式会议的定义与区别
    工作分解结构WBS、组织分解结构OBS、资源分解结构 定义和区别(含例子)
    kettle里的参数和变量
    kettle生成100个随机数,并统计小于等于50和大于50个数
    使用kettle制作拉链表
    MySQL字符串转日期
  • 原文地址:https://www.cnblogs.com/hplsharenote/p/9802388.html
Copyright © 2020-2023  润新知