欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

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

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

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

面向?qū)ο箢愔g主要的幾種關(guān)系簡析

strongerHuang ? 來源:嵌入式情報局 ? 2023-02-17 09:03 ? 次閱讀

嵌入式開發(fā)雖然平時C語言用的比較多,但面向?qū)ο蟮乃季S應(yīng)該是每一位嵌入式軟件工程師必備的知識。

之前給大家分享過用C語言實現(xiàn)面向?qū)ο蟮膬?nèi)容,也分享過單片機(jī)C++點燈的文章。

今天就再給大家拓展一下面向?qū)ο箢愔g的幾種關(guān)系。

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

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

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

2d9ec21e-ae5b-11ed-bfe3-dac502259ad0.png

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

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

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

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

2dbb253a-ae5b-11ed-bfe3-dac502259ad0.png

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

3、泛化關(guān)系

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

2dcb267e-ae5b-11ed-bfe3-dac502259ad0.png

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

4、依賴關(guān)系

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

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

2ddc33ce-ae5b-11ed-bfe3-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)等等。

2dee5b26-ae5b-11ed-bfe3-dac502259ad0.png

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

2e02cbf6-ae5b-11ed-bfe3-dac502259ad0.png

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

2e1d479c-ae5b-11ed-bfe3-dac502259ad0.png

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






審核編輯:劉清

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

    關(guān)注

    0

    文章

    23

    瀏覽量

    12292
  • 編程語言
    +關(guān)注

    關(guān)注

    10

    文章

    1951

    瀏覽量

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

    關(guān)注

    0

    文章

    147

    瀏覽量

    7037

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

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

收藏 人收藏

    評論

    相關(guān)推薦

    基于C/C++面向對象的方式封裝socket通信流程

    在掌握了基于 TCP 的套接字通信流程之后,為了方便使用,提高編碼效率,可以對通信操作進(jìn)行封裝,本著有淺入深的原則,先基于 C 語言進(jìn)行面向過程的函數(shù)封裝,然后再基于 C++ 進(jìn)行面向對象
    的頭像 發(fā)表于 12-26 10:00 ?1967次閱讀

    利用LabVIEW工程庫實現(xiàn)面向對象編程

    ,編寫出來程序會越來越顯得雜亂無章,使得程序的調(diào)試、維護(hù)、和升級都變得非常困難。 解決這一問題的途徑就是引入更加抽象化的面向對象的編程方法[2]。通過構(gòu)造的方法,把不同模塊之間的數(shù)據(jù)
    發(fā)表于 12-06 12:41

    3分鐘看懂Python面向對象

    Python雖然是解釋型語言,但從設(shè)計之初就已經(jīng)是一門面向對象的語言,對于Python來說一切皆為對象。正因為如此,在Python中創(chuàng)建一個對象
    發(fā)表于 06-08 14:20

    對象關(guān)系的阻抗失配的含義了解

    也對這個問題深感頭痛。“阻抗失配”產(chǎn)生的原因是因為對象模型與關(guān)系模型之間缺乏固有的親合力。“阻抗失配”所帶來的問題包括:的層次關(guān)系必須綁定
    發(fā)表于 06-04 06:47

    LabVIEW面向對象的ActorFramework(1)

    ` 本帖最后由 bollworm 于 2020-2-10 14:54 編輯 本系列文章主要闡述以下幾個問題:(1)什么是面向對象編程?(2)為什么要學(xué)習(xí)面向編程?(3)LabVIE
    發(fā)表于 02-10 14:09

    談?wù)?b class='flag-5'>面向對象編程

    工業(yè)控制系統(tǒng)的PLC程序中也可以采用這種設(shè)計思想,雖然我們無法實現(xiàn)面向對象的很多優(yōu)秀特點如“繼承”,甚至于它根本就不具備面向對象編程語言的特點,但
    發(fā)表于 09-08 07:47

    面向對象編程語言的特點

    工業(yè)控制系統(tǒng)的PLC程序中也可以采用這種設(shè)計思想,雖然我們無法實現(xiàn)面向對象的很多優(yōu)秀特點如“繼承”,甚至于它根本就不具備面向對象編程語言的特點,但
    發(fā)表于 09-08 07:44

    解讀rtt的c的面向對象對象創(chuàng)建及其啟動初始化流程

    解讀rtt的IO設(shè)備框架。先澄清下概念,這些概念是進(jìn)行新的定義或者表達(dá)名詞在本文中的意思,防止有二義。然后介紹各類關(guān)系,IO設(shè)備框架對應(yīng)的。再接著用偽代碼舉出了面向對象語言的
    發(fā)表于 07-05 11:01

    面向對象軟件開發(fā)概述

    1.1 面向對象問題求解的提出1.2 面向對象問題求解概述1.3 對象與實體1.4
    發(fā)表于 12-14 20:26 ?15次下載

    對象/關(guān)系映射中的完整性及關(guān)系約束檢查

    【摘要】針對面向對象設(shè)計與關(guān)系數(shù)據(jù)庫設(shè)計之間的不匹配問題,介紹了一種映射方法O/R Mapping。在使用對象模型時,常常通過
    發(fā)表于 03-15 14:01 ?13次下載

    基于代數(shù)規(guī)格的面向對象蛻變關(guān)系構(gòu)造方法

    針對面向對象軟件級測試中方法序列調(diào)用時的Oracle問題,提出了一種基于代數(shù)規(guī)格的面向對象蛻變關(guān)系
    發(fā)表于 01-03 16:31 ?0次下載

    UML之間關(guān)系

    UML中描述對象之間相互關(guān)系的方式包括:依賴(Dependency),關(guān)聯(lián)(Association),聚合(Aggregation),組合(Composition),泛化(Gene
    的頭像 發(fā)表于 09-25 09:57 ?3939次閱讀
    UML<b class='flag-5'>類</b>圖<b class='flag-5'>之間</b>的<b class='flag-5'>關(guān)系</b>

    面向對象程序設(shè)計中的幾種關(guān)系

    面向對象程序設(shè)計中是一個非常重要的概念,是一系列具有相同屬性和方法的對象抽象,那么弄明白之間
    的頭像 發(fā)表于 09-16 09:07 ?1503次閱讀

    面向過程與面向對象的區(qū)別

    說起面向對象,大家可能會想到其他的,但是此對象非彼對象哈哈,不必驚慌,也特別好搞定。 在聽到面向
    的頭像 發(fā)表于 02-15 11:10 ?4296次閱讀
    <b class='flag-5'>面向</b>過程與<b class='flag-5'>面向</b><b class='flag-5'>對象</b>的區(qū)別

    利用UML(圖)表示之間的6種關(guān)系

    在java以及其他的面向對象設(shè)計模式中,之間主要有6種
    的頭像 發(fā)表于 05-05 10:18 ?2619次閱讀
    利用UML(圖)表示<b class='flag-5'>類</b><b class='flag-5'>之間</b>的6種<b class='flag-5'>關(guān)系</b>