类与类之间的关系学习总结

snifferhu      2022-02-14     802

关键词:


类与类之间的关系,本身对于实现业务开发没有太大的用处。绝大部分码农干到退休也不用了解。

主要用于解析源码结构,梳理设计意图。

概览


类之间可描述的关系大概有下面几种:继承、实现、依赖、关联、聚合、组合关系。
总览图如下:

技术分享图片

示例


技术分享图片

  • 学习
    <<interface>>,表示学习是一个接口;

  • <<abstract>>,表示人是一个抽象类;

继承关系(inherit)


  • 继承关系为 is-a的关系;
  • 两个对象之间如果可以用 is-a 来表示,就是继承关系;
    eg: 程序员是人

表现:用于Interface和Interface之间,或者用于Class和Class之间

实现关系(Realitization)


  • 类实现接口中定义的方法;

表现: 用于Interface和Class之间

关联(association)


指的是模型元素之间的一种语义联系,是类之间的一种很弱的联系。
依赖、关联、聚合、组合都是关联。依赖是最弱的关联,其次是普通关联,接下来是聚合,组合是最强的关联。
关联强度: 组合 > 聚合 > 关联 > 依赖

聚合


  • 整体和个体之间的关系。是has-a的关系
  • 整体和部分可以具有各自的生命周期,部分可以属于多个整体对象,也可以为多个整体对象共享
    表现: 如果A由B聚合成,表现为A包含有B的全局对象,但是B对象可以不在A创建的时刻创建。

    class A{
    private B b;
    public A(B b){
        this.b = b;
    }
    }

组合


  • 一种contains-a的关系
  • 部分不能脱离整体而存在,整体的生命周期结束也就意味着部分的生命周期结束
    表现:如果A由B组成,表现为A包含有B的全局对象,并且B对象在A创建的时刻创建。
    ```
    class A{
    private B b;
    public A(){
    this.b = new B();
    }
    }
    依赖(Dependency)
    ---------------
    ----
  • 从字面理解的话,是说一个类用到了另一个类。
  • 这种使用关系是具有偶然性的、临时性的、非常弱的。
    表现:如果A依赖于B,则B体现为局部变量方法的参数、或静态方法的调用。
    class A{
    private B b;
    public setB(B b){
    this.b = b;
    }
    }
    在开发过程中,大量的用到了依赖关系。


























今天最主要的就是掌握了类与类之间的关系

...写出了表达式计算器的第一版程序,主要还是更加熟悉了类与类之间的关系。第一版程序有个问题,就是它任何情况下都执行右结合律,比如正常输入8-9+1,程序处理成8-(9+1)。明天学习改进的方法。今天整理了一下类与类之... 查看详情

类与类之间类与接口之间接口与接口之间的关系

一、类与类之间  单继承二、类与接口之间  多实现三、接口与接口之间的关系  多实现  继承关键字(extends)  实现关键字(implements)     查看详情

43-类与类之间的关系说明

...B,C,D,E类2关联关系  对象之间一种引用关系,比如客户类与订单 查看详情

类与类之间的关系

横向关系依赖关联聚合组合判断方法:  生命周期有关系:组合,聚合  聚合:包含多个相同的类  组合:定义的时候就要有  依赖:只要使用就必须要有  关联:可有可无纵向关系继承基类(父类)->派生类(子类... 查看详情

(十七)类与类之间的关系

?.类与类之间的依赖关系    ?千世界,万物之间皆有规则和规律。我们的类和对象是对?千世界中的所有事物进?归类,那事物之间存在着相对应的关系。类与类之间也同样如此,在?向对象的世界中 类与类中存在... 查看详情

类与类之间的关系

一、继承关系     继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。在Java中继承关系通过关键字extends明确标识,在设计时一般没有... 查看详情

类与类之间的关系(代码片段)

... 3.继承关系,self到底是什么鬼?  4.类中的特殊成员一类与类之间的依赖关系  大千世界,万物之间皆有规则和规律,我们的类和对象是对大千世界中的事物进行归类,那事物之间存在着相对应的关系,类与类之间也是同样如此,在... 查看详情

类与类之间的关系-----转载

一、继承关系     继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。在Java中继承关系通过关键字extends明确标识,在设计时一般没有... 查看详情

学习总结-hibernate设计表

...表与表之间的联系关系    (2)O:对象关系,分析类与类之间属性的关联    (3)M:映射文件关系,根据对象关系来配置映射文件  3.启动服务器查看表是否创建且 查看详情

uml学习01——类图

...型。画类图的时候,理清类和类之间的关系是重点。类与类之间的关系有多种:泛化(Generalizat 查看详情

类与类之间的几种关系

一、继承关系     继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。在Java中继承关系通过关键字extends明确标识,在设计时一般没有... 查看详情

类与类之间的几种关系

一、继承关系     继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。在Java中继承关系通过关键字extends明确标识,在设计时一般没有... 查看详情

继承和派生——类与类之间的关系继承的基本概念(代码片段)

1、类与类之间的关系  has-A,uses-A和is-A  has-A包含关系,用以描述一个类由多个“部件类”构成。实现has-A关系用类成员表示,即一个类中的数据成员是另一种已经定义的类。  uses-A一个类部分地使用另一个类。通过类之... 查看详情

面向对象类与类之间的关系(依赖,组合,聚合,等)

-----------------------------困难是一位严厉的老师,他产生于克服困难的努力中。#---------------------------------------------------------------------------------##classPage:#def__init__(self,lst,pagesize):#self.lst=lst#self.pa 查看详情

18类与类之间的关系

今日主要内容类与类之间的关系在我们的世界中事物和事物之间总会有一些联系.在面向对象中.类和类之间也可以产生相关的关系1.依赖关系执行某个动作的时候.需要xxx来帮助你完成这个操作.此时的关系是最轻的.随时可以更换... 查看详情

类与类之间的关系

...的类图中使用的是C#的数据类型,与Java的略有差别。二、类与类之间的关系类与类之间主要有6种关系,包括依赖,关联,聚合,组合,继承,实现。他们的耦合度是一次增强的。1、依赖(Dependency)  依赖主要体现了一种使... 查看详情

18类与类之间的关系

三十七.类与类之间的关系  一.依赖关系    执行某个动作的时候.需要xxx来帮助你完成这个操作      随时可以更换另外一个东西来完成此操作   此时的关系是最轻的.     二.关联关系(... 查看详情

spring04-----di

...是“类之间的关系”。具体有以下几种关系:泛化:表示类与类之间的继承关系、接口与接口之间的继承关系;实现:表示类对接口的实现依赖:当类与类之间有使用关系时就属于依赖关系,不同于关联关系,依赖不具有“拥有... 查看详情