面向对象类之间的几种关系

strongerHuang strongerHuang     2022-12-02     548

关键词:

关注+星标公众,不错过精彩内容

作者 | 情报小哥

来源 | 嵌入式情报局

1、类之间的关系   

类在面向对象程序设计中是一个非常重要的概念,是一系列具有相同属性和方法的对象抽象,那么弄明白类之间的主要关系对于面向对象程序设计建模起到了指导意义。

类之间关系主要分为如下几种:

下面对类的这几种关系进行详细描述:

2、实现关系   

类之间的实现关系主要是用于描述接口与类或者组件之间的关系,该接口是操作和方法的集合,提供给类使用。

这样不同的类通过统一的接口以自己的方式来进行实现。

在C++语言中体现实现关系主要通过virtual虚函数来表达,而接口是通过纯虚函数来表达。

3、泛化关系  

泛化其实也叫做继承关系,在学习C++编程语言中应该是对其非常了解了。

比如子类继承父类的相关属性和方法。

4、依赖关系  

依赖关系更多的一种使用关系,比如某人要去上班,那么他需要依赖于一种交通工具,可以是公交车、可以是同事的车等等。

在程序中通常一个类是另外一个类的参数或者返回值等等。

5、关联关系  

关联算是复杂一点的关系形式,主要有一般关联、聚合和组合。关联关系的两个类更多的是处于一种平等的位置,而非从属关系。

通常在C++中一个类作为另外一个类的成员变量,这种叫单向关联,如果我中有你,你中有我,则是一种双向关联等等。

聚合关系是一种整体与部分的关系,但是整体与部分可以分开独立存在,部分可以添加到整体,也可从整体中移出。

而组合关系也是一种整体与部分的关系,但其关联性更强,两者不可分开,且具有统一的生命周期,同生死共存亡。

举个例子,电脑的可以使用不同品牌的内存条,那么其可以看成聚合的关系,而一个人与嘴巴的关系,这种关联性更强的属于组合关系,属于生命一体。

------------ END ------------


●专栏《嵌入式工具

●专栏《嵌入式开发》

●专栏《Keil教程》

●嵌入式专栏精选教程

关注公众号回复“加群”按规则加入技术交流群,回复“1024”查看更多内容。


点击“阅读原文”查看更多分享。

面向对象类之间主要的几种关系

...入式情报局嵌入式开发虽然平时C语言用的比较多,但面向对象的思维应该是每一位嵌入式软件工程师必备的知识。之前给大家分享过用C语言实现面向对象的内容,也分享过单片机用C++点灯的文章。今天就再给大家... 查看详情

uml中的几种关系详细解析

...,聚合,组合,实现类与类图1)类(Class)封装了数据和行为,是面向对象的重要组成部分,它是具有相同属性、操作、关系的对象集合的总称。2)在系统中,每个类具有一定的职责,职责指的是类所担任的任务,即类要完成什么样的功... 查看详情

06.实现servlet的几种方式,以及接口或者类之间的关系

接口:Servlet、ServletConfig、ServletRequest、ServletResponse、HttpServletRequest、HttpServletResponse、ServletContext类:HttpServlet(抽象类)、GenericServlet(抽象类)来张关系图ServletContext:ServletContext的对象是application是在项目 查看详情

类之间存在的几种常见关系

USES-A:依赖关系,A类会用到B类,这种关系具有偶然性,临时性。但是B类的变化会影响A类。这种在代码中的体现为:A类方法中的参数包含了B类。 关联关系:A类会用到B类,这是一种强依赖关系,是长期的并非偶然。在代码... 查看详情

类与类之间的几种关系

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

类与类之间的几种关系

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

js面向对象的几种常见写法

下面是一个简单的js对象:定义Circle类,拥有成员变量r,常量PI和计算面积的成员函数area(),常用为第一种和第三种。1.工厂方式varCircle=function(){varobj=newObject();obj.PI=3.14159;obj.area=function(r){returnthis.PI*r*r;}returnobj;}varc=newCircle();alert(c. 查看详情

js面向对象类

类的声明继承的几种方法 类的声明第一种functioncar(){this.name=‘name‘;}第二种。es6中新添加的classcar(){constructor(){this.name=‘name‘;}}继承的几种方法1.构造函数实现继承functionParent(){this.name=‘parent‘;}Parent.prototype.toSay=function(){ 查看详情

java面向对象设计中类关系

  类之间的关系种类: Generalization(泛化),Dependency(依赖关系)、Association(关联关系)、Aggregation(聚合关系)、Composition(组合关系)。   Generalization(泛化)表现为继承或实现关系(isa)。具体形式为类与类之间的继承... 查看详情

组合委托与继承,面向对象中类之间的基本关系漫游

侯捷在《C++面向对象高级编程》课程的第11~13节讲到了面向对象中类之间的三个关系:组合、委托与继承,并举了几个例子来说明这些关系如何组合在一起构成更加强大以及实用的设计模式。现摘抄精华于此,并从其他参考书中... 查看详情

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

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

面向对象中类和类的关系

在面向对象方法中,我们在确定了类及类的属性和方法后。不可避免的要研究类和类之间的关系,正是这些关系将整个事情串联起来。使彼此之间有了联系,就像现实生活中,人与人交往中存在着不同的关系。了解这些关系,对... 查看详情

面向对象的三大特征中的“继承”和继承的几种方式

学习继承之前,要先了解什么是面向对象:(把相同的代码提取(抽象)出来归为一类,把公共的方法挂在这个类的原型上的一种编程思想(开发模式))>>原型和原型链,在,面向对象,的那个随笔分类里有细说。<<面... 查看详情

javascript的几种继承

...造函数、原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。确认原型和实例之间的关系用instanceof。原型链继承缺点:字面量重写原型... 查看详情

js面向对象的几种写法

JS中,面向对象有几种写法。归纳下,大概有下面这几种:工厂模式,构造函数模式,原型模式,构造函数与原型模式的混合使用,原型链继承,借用构造函数继承。  一、工厂模式functionperson(name,age,jpb){varo={};//定义o这个... 查看详情

面向对象之多态

1.多态   a:要有继承关系。   b:要有方法重写。   c:要有父类引用指向子类对象。2.多态的几种运行规则a:成员变量:编译看左边运行看左边:Animalt=newOne();System.out.println(t.c);编译看父类有没有空参方... 查看详情

面向对象的几种设计模式

第一种模式:工厂模式functionParent(){     //原料 varChild=newObject();//创建对象     //加工 Child.name="aaa";//对象属性 Child.age="30"; child.fn=fn;//对象方法    //出厂    returnChild;//一定要返回该对象};varfn=function(){ return... 查看详情

面向对象

名词解释面向对象程序设计中的概念主要包括:对象、类、数据抽象、继承、动态绑定、数据封装、多态性、消息传递。通过这些概念面向对象的思想得到了具体的体现。1)对象(Object)可以对其做事情的一些东西。一个对象有... 查看详情