91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

類在面向?qū)ο蟪绦蛟O(shè)計中的幾種關(guān)系

strongerHuang ? 來源:嵌入式情報局 ? 作者:情報小哥 ? 2022-09-16 09:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1、類之間的關(guān)系

類在面向?qū)ο蟪绦蛟O(shè)計中是一個非常重要的概念,是一系列具有相同屬性和方法的對象抽象,那么弄明白類之間的主要關(guān)系對于面向?qū)ο蟪绦蛟O(shè)計建模起到了指導(dǎo)意義。

類之間關(guān)系主要分為如下幾種:

5bb0500a-3557-11ed-ba43-dac502259ad0.png

下面對類的這幾種關(guān)系進行詳細描述:

2、實現(xiàn)關(guān)系

類之間的實現(xiàn)關(guān)系主要是用于描述接口與類或者組件之間的關(guān)系,該接口是操作和方法的集合,提供給類使用。

這樣不同的類通過統(tǒng)一的接口以自己的方式來進行實現(xiàn)。

5bee5ad0-3557-11ed-ba43-dac502259ad0.png

C++語言中體現(xiàn)實現(xiàn)關(guān)系主要通過virtual虛函數(shù)來表達,而接口是通過純虛函數(shù)來表達。

3、泛化關(guān)系

泛化其實也叫做繼承關(guān)系,在學(xué)習(xí)C++編程語言中應(yīng)該是對其非常了解了。

5c33479e-3557-11ed-ba43-dac502259ad0.png

比如子類繼承父類的相關(guān)屬性和方法。

4、依賴關(guān)系

依賴關(guān)系更多的一種使用關(guān)系,比如某人要去上班,那么他需要依賴于一種交通工具,可以是公交車、可以是同事的車等等。

在程序中通常一個類是另外一個類的參數(shù)或者返回值等等。

5c8283ae-3557-11ed-ba43-dac502259ad0.png

5、關(guān)聯(lián)關(guān)系

關(guān)聯(lián)算是復(fù)雜一點的關(guān)系形式,主要有一般關(guān)聯(lián)、聚合和組合。關(guān)聯(lián)關(guān)系的兩個類更多的是處于一種平等的位置,而非從屬關(guān)系。

通常在C++中一個類作為另外一個類的成員變量,這種叫單向關(guān)聯(lián),如果我中有你,你中有我,則是一種雙向關(guān)聯(lián)等等。

5cb91fa4-3557-11ed-ba43-dac502259ad0.png

聚合關(guān)系是一種整體與部分的關(guān)系,但是整體與部分可以分開獨立存在,部分可以添加到整體,也可從整體中移出。

5cda2de8-3557-11ed-ba43-dac502259ad0.png

而組合關(guān)系也是一種整體與部分的關(guān)系,但其關(guān)聯(lián)性更強,兩者不可分開,且具有統(tǒng)一的生命周期,同生死共存亡。

5d009dde-3557-11ed-ba43-dac502259ad0.png

舉個例子,電腦的可以使用不同品牌的內(nèi)存條,那么其可以看成聚合的關(guān)系,而一個人與嘴巴的關(guān)系,這種關(guān)聯(lián)性更強的屬于組合關(guān)系,屬于生命一體。




審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1964

    瀏覽量

    39566
  • C++語言
    +關(guān)注

    關(guān)注

    0

    文章

    147

    瀏覽量

    7682

原文標題:面向?qū)ο箢愔g的幾種關(guān)系

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    請問單片機開發(fā)的程序設(shè)計語言主要有哪幾種?

    單片機開發(fā)的程序設(shè)計語言主要有哪幾種
    發(fā)表于 01-14 08:29

    嵌入式程序設(shè)計4種常用模式

    的框架,有一個基定義了圖形對象的接口,基于它可以派生出橢圓,矩形,直線各種子類。 當(dāng)用戶繪制一個圖形時,框架就要實例化該子類。這時候可以用工廠方法,原型方法等等。 class CDrawObj
    發(fā)表于 12-25 07:12

    C語言與C++的區(qū)別及聯(lián)系

    一步的實現(xiàn),使用的時候一個一個的依次調(diào)用就可以了。 面向對象面向對象編程就是把問題分解成各個對象,建立
    發(fā)表于 12-24 07:23

    C與C++之間的聯(lián)系

    控制能力,這一點與C語言相似,使得它們系統(tǒng)編程、嵌入式系統(tǒng)等領(lǐng)域都得到廣泛應(yīng)用。 3、發(fā)展歷程: C++正是C語言的基礎(chǔ)上逐步發(fā)展起來的,C++的設(shè)計初衷是作為一種“帶的C”來增強C語言的功能
    發(fā)表于 12-11 06:51

    C語言和C++之間的區(qū)別是什么

    區(qū)別 1、面向對象編程 (OOP): C語言是一種面向過程的語言,它強調(diào)的是通過函數(shù)將任務(wù)分解為一系列步驟進行執(zhí)行。 C++C語言的基礎(chǔ)上擴展了
    發(fā)表于 12-11 06:23

    看懂C語言程序的內(nèi)聚和耦合

    的越緊密,則它的內(nèi)聚性就越高。 耦合是程序各模塊之間相互聯(lián)系緊密程度的一種度量。各模塊之間聯(lián)系越緊密,其耦合性就越強。模塊間耦合高低取決于模塊間接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。
    發(fā)表于 12-08 06:37

    `lv_obj_tree.h` **LVGL v9** 的位置和作用

    lv_obj_tree.h LVGL v9 的位置和作用如下: 文件路徑 lv_obj_tree.h 位于 LVGL 源碼的 src/core/ 目錄下,完整路徑是: lvgl/src
    發(fā)表于 11-13 15:49

    圖解碼說-六大UML關(guān)系(依賴,繼承,實現(xiàn),關(guān)聯(lián),聚合,組合)

    UML 圖是面向對象設(shè)計的 “施工圖”,而依賴、繼承、實現(xiàn)、關(guān)聯(lián)、聚合、組合這六大關(guān)系,就是圖中定義
    的頭像 發(fā)表于 11-05 09:03 ?685次閱讀
    圖解碼說-六大UML<b class='flag-5'>類</b>圖<b class='flag-5'>關(guān)系</b>(依賴,繼承,實現(xiàn),關(guān)聯(lián),聚合,組合)

    PYQT 應(yīng)用程序框架及開發(fā)工具

    通訊是面向對象程序設(shè)計的一個極其重要的內(nèi)容,類似 MicrosoftMFC的消息映射和事件循環(huán),Q T 的對象間通訊采用的是 signal-slot 機制, signal 就好像是事件
    發(fā)表于 10-29 07:15

    網(wǎng)線企業(yè)主要使用在哪些場景里

    網(wǎng)線企業(yè)主要應(yīng)用于以下場景: 數(shù)據(jù)中心內(nèi)部互聯(lián) 核心需求:數(shù)據(jù)中心需處理海量數(shù)據(jù)傳輸,八網(wǎng)線支持 40Gbps 傳輸速率 和 2000MHz 帶寬,可滿足服務(wù)器與交換機間的高
    的頭像 發(fā)表于 09-10 09:56 ?755次閱讀

    MG51FB9AE MCU,如何使用LDROM的IAP加載程序MCUAPROM中上傳程序?

    MG51FB9AE MCU,如何使用LDROM的IAP加載程序MCUAPROM中上傳程序
    發(fā)表于 08-22 06:29

    [Actor] 通過actor創(chuàng)建控制中心與數(shù)據(jù)采集工作站來看操作者架構(gòu)

    個獨立的,是一個獨立的對象,它擁有自己的私有數(shù)據(jù)和行為(方法vi);該對象通過“消息”與其他操作者進行通信,或通過“消息”自己內(nèi)部調(diào)用具體某個行為vi。 2、每個actor
    發(fā)表于 05-14 18:44

    程序設(shè)計與數(shù)據(jù)結(jié)構(gòu)

    程序設(shè)計與數(shù)據(jù)結(jié)構(gòu)》重點闡述了三大方向內(nèi)容: 1. C語言學(xué)習(xí)的痛點:針對當(dāng)前工程師C語言學(xué)習(xí)的痛點,如指針函數(shù)與函數(shù)指針,如何靈活應(yīng)用結(jié)構(gòu)體等。從變量的三要素(變量的類型,
    發(fā)表于 05-13 16:45

    CY7C65215使用IOS的USB CDC UART驅(qū)動程序是否可以與IOS一起工作?

    我知道 CY7C65215 沒有適用于 IOS 的驅(qū)動程序。但是,使用 IOS 的 USB CDC UART 驅(qū)動程序是否可以與 IOS 一起工作? 我們正在考慮
    發(fā)表于 04-30 07:57

    婦女節(jié)|從程序設(shè)計的先驅(qū)到嵌入式系統(tǒng)的革新者!

    領(lǐng)域的技術(shù)高管占比仍不足15%,這僅是科技行業(yè)整體高管性別平等水平的一半。盡管如此,女性在這一領(lǐng)域的影響力絲毫未減。從程序設(shè)計的先驅(qū)到嵌入式系統(tǒng)的革新者,數(shù)不勝數(shù)
    的頭像 發(fā)表于 03-08 09:55 ?990次閱讀
    婦女節(jié)|從<b class='flag-5'>程序設(shè)計</b>的先驅(qū)到嵌入式系統(tǒng)的革新者!