美文网首页
面向对象

面向对象

作者: 幼稚园大班 | 来源:发表于2018-11-21 22:29 被阅读0次

    1.封装

    属性私有:将对象的属性和行为封装起来
    对外提供公有的getter/setter

    2.类之间的关系

    纵向关系:比较清晰

    1.继承、 实现
    -继承关系:父子关系--extends
    -实现:类对接口的实现---implements

    横向关系:取决于语义

    依赖

    -双方的地位往往是独立平等的(地位)
    -是偶尔的、临时性的、不频繁性的(依赖程度)
    -代码层面的表现形式而言:往往是局部的变量
    -类B以参数的形式传入类A的方法
    类B以局部变量的形式存在于类A的方法中
    类A调用类B的静态方法
    例子:人与纸杯

    关联

    -双方的地位往往是独立的、平等的(地位)
    -是长期的、稳定的、频繁的(依赖关系)
    -代码层面的表现形式而言,关联往往以全局属性的形式存在
    例子:人和手机

    聚合

    -双方的地位不是平等的,是整体和部分之间的关系(地位)
    -是长期的、稳定的、频繁的,这种关系比关联更强,以至于在形式上出现了整体和-部分之间的关系。
    -整体和部分都有自己的生命周期。
    -代码层面的表现形式而言可参考关系
    例子:合唱团和歌手

    组合

    -双方的地位不是平等的,是整体和部分之间的关系(地位)
    -比聚合更强,部分的生命周期取决于整体,部分随着整体的消失而消失(依赖程度)
    -代码层面的表现形式而言可参考关联
    -区分是聚合还是组合的核心点是在生命周期
    例子:树和树根

    相关文章

      网友评论

          本文标题:面向对象

          本文链接:https://www.haomeiwen.com/subject/zrihqqtx.html