溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

進(jìn)階面向?qū)ο螅ㄊ唬?/h1>
發(fā)布時(shí)間:2020-07-11 20:16:47 來源:網(wǎng)絡(luò) 閱讀:340 作者:上帝之子521 欄目:編程語言

        在日常生活中,我們都習(xí)慣于對(duì)事物進(jìn)行分類。那么,這種分類的思想是否也可以引入程序設(shè)計(jì)中呢?面向?qū)ο蟮囊饬x在于:將日常生活中習(xí)慣的思維方式引入程序設(shè)計(jì)中;將需求中的概念直觀的映射到解決方案中;以模塊為中心構(gòu)建可復(fù)用的軟件系統(tǒng);提高軟件產(chǎn)品的可維護(hù)性和可擴(kuò)展性。

        那我們來介紹下面向?qū)ο笾械膬蓚€(gè)基本概念:類和對(duì)象。類:指的是一類事物,是一個(gè)抽象的概念。對(duì)象:指的是屬于某個(gè)類的具體實(shí)體。類是一種模型,這種模型可以創(chuàng)建出不同的對(duì)象實(shí)體;對(duì)象實(shí)體是類模型的一個(gè)具體實(shí)例。一個(gè)類可以有很多對(duì)象,而一個(gè)對(duì)象必然屬于某個(gè)類。

        下來我們以生活中的類和對(duì)象為大家介紹下這兩個(gè)概念。我們一提到老虎,并沒有說什么老虎,在這顯然就是個(gè)類了。老虎還分為華南虎、東北虎以及孟加拉虎等。那么說到華南虎,我們也不知道說的是哪只老虎,這時(shí)它們顯然也是類了。如果我們說西安動(dòng)物園里的大毛華南虎,這時(shí)就具體到某只老虎了,顯然大毛便是一個(gè)具體的對(duì)象啦。再比如說電腦,它分為Dell、HP以及Sony等。具體到某個(gè)品牌的電腦時(shí),才能說是對(duì)象。否則便是類了。

        說了這么多,類和對(duì)象的意義是什么呢?類用于抽象的描述一類事物所特有的屬性和行為,如電腦擁有 CPU,內(nèi)存和硬盤,并且可以開機(jī)和運(yùn)行程序;對(duì)象是具體的事物,擁有所屬類中描述的一切屬性和行為,如每一只老虎都有不同的體重、不同食量以及不同的性情等。

        下來我們就來看看類之間的基本關(guān)系:繼承和組合。繼承:從已存在類細(xì)分出來的類和原類之間具有繼承關(guān)系,繼承的類(子類)擁有原類(父類)的所有屬性和行為。組合:一些類的存在必須依賴于其他的類,這種關(guān)系叫組合;組合的類在某一個(gè)局部上由其它的類組成

        我們用圖來看看什么是繼承(圖一)和組合(圖二)

進(jìn)階面向?qū)ο螅ㄊ唬?></p><p>                                        圖一</p><p><img src=#include <stdio.h> struct Biology {     bool living; }; struct Animal:Biology {     bool movable;     void findFood() {} }; struct Plant:Biology {     bool lgrowable; }; struct Beast:Animal {     void sleep() {} }; struct Humann:Animal {     void sleep() {}     void work() {} }; int main() {          return 0; }

        編譯結(jié)果如下

進(jìn)階面向?qū)ο螅ㄊ唬?></p><p>        我們發(fā)現(xiàn)已經(jīng)正確編譯了,也就是說這樣的寫法已經(jīng)被 g++ 編譯器所支持了。通過對(duì)面向?qū)ο蟮膶W(xué)習(xí),總結(jié)如下:<span >1、面向?qū)ο髸r(shí)當(dāng)今 軟件開發(fā)中的重要方法;2、類和對(duì)象時(shí)面向?qū)ο罄碚撝械幕靖拍睿惡蛯?duì)象均來源于日常生活中;3、每個(gè)類可以有多個(gè)對(duì)象,每個(gè)對(duì)象必然屬于某個(gè)類;4、類之間可以存在繼承關(guān)系或組合關(guān)系;5、繼承關(guān)系中子類擁有父類的一切屬性和行為,組合關(guān)系是類之間整體和部分的關(guān)系;6、類及類之間的關(guān)系可以有不同的表示法;7、編譯器對(duì)類的表示法有具體的要求。</span></p><p><br/></p><p>        <span ><span >歡迎大家一起來學(xué)習(xí) C++ 語言,可以加我QQ:</span><span >243343083</span><span >。</span></span></p>
													            </div>
            <div   id=向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI