七七影院色七七_免费观看欧美a一级黄片_亚洲综合久久久久久中文字幕_国产999999在线视频免费观看,国产小视频无码,国产精品亚洲日日摸夜夜添,女人高潮潮叫免费网站,久久影院国产精品,日韩成人在线影院,欧美囗交XX×BBB视频,色在线综合高清
機(jī)械社區(qū)
標(biāo)題:
二次開發(fā)學(xué)習(xí)貼之面向象對(duì)象編程
[打印本頁]
作者:
怕瓦落地2011
時(shí)間:
2024-10-4 14:13
標(biāo)題:
二次開發(fā)學(xué)習(xí)貼之面向象對(duì)象編程
幾乎所有3D軟件的二次開發(fā),,基本上都是基于面向?qū)ο缶幊蹋闱宄䦷讉(gè)基本概念對(duì)理解程序是非常重要的:
5 k0 f6 E& Q2 I% l: {/ K' h4 B3 g
: s1 `' }" E2 X3 S5 G4 a/ \( P
面向?qū)ο蟮幕靖拍?font class="jammer">$ v/ Z3 D/ K; g" I* N5 d+ Q/ G
對(duì)象:對(duì)象是要研究的任何事物,。從一本書到一家圖書館,,單的整數(shù)到整數(shù)列龐
9 v6 Q8 q5 e$ {! h) J$ m1 q
大的數(shù)據(jù)庫、極其復(fù)雜的自動(dòng)化工廠,、航天飛機(jī)都可看作對(duì)象,,它不僅能表示有形的實(shí)體,也能表示無形的(抽象的)規(guī)則,、計(jì)劃或事件,。對(duì)象由數(shù)據(jù)(描述事物的屬性)和作用于數(shù)據(jù)的操作(體現(xiàn)事物的行為)構(gòu)成一獨(dú)立整體。從程序設(shè)計(jì)者來看,,對(duì)象是一個(gè)程序模塊,,從用戶來看,對(duì)象為他們提供所希望的行為,。在對(duì)內(nèi)的操作通常稱為方法,。
" \, l: h9 x& y/ W Q7 f
對(duì)象的狀態(tài)用數(shù)據(jù)來表示稱為屬性
$ j+ M% W/ ?1 y7 _, w
對(duì)象的行為用代碼來實(shí)現(xiàn)稱為方法
9 w9 Z9 F/ a& N9 ~3 x& _2 |5 A
類:類是對(duì)象的模板,。即類是對(duì)一組有相同數(shù)據(jù)和相同操作的對(duì)象的定義,,一個(gè)類所包含的方法和數(shù)據(jù)描述一組對(duì)象的共同屬性和行為。類是在對(duì)象之上的抽象,,對(duì)象則是類的具體化,,是類的實(shí)例。類可有其子類,也可有其它類,,形成類層次結(jié)構(gòu),。
/ N. ~5 k$ F% \4 Y/ Z
類與對(duì)象的關(guān)系:例如設(shè)計(jì)圖紙就是類,依據(jù)圖紙制造的零件就是對(duì)象
& O+ ?4 E1 Y5 h) ~2 {( e
% A, B0 S6 F) f. a
面向?qū)ο缶幊逃腥筇匦�,,封裝,、繼承和多態(tài)。
( `0 B& C% l, U& r2 M1 \
1. 封裝
封裝是把客觀事物封裝成抽象的類,,并隱藏實(shí)現(xiàn)細(xì)節(jié),,使得代碼模塊化。比如,,我們可以把“汽車”這個(gè)客觀事物封裝成一個(gè)類,,這個(gè)類有顏色、型號(hào)等屬性,,有啟動(dòng),、加速、剎車等方法,,而這些屬性和方法的具體實(shí)現(xiàn)則被隱藏起來,,使用者只需要知道這個(gè)類有哪些屬性和方法,不需要知道這些方法是如何實(shí)現(xiàn)的,。
$ Y& o7 E/ C! ^
2. 繼承
繼承是面向?qū)ο缶幊痰牧硪粋(gè)重要特性,,它提供了一種無需重新編寫,使用現(xiàn)有類的所有功能并進(jìn)行擴(kuò)展的能力,。比如,,我們可以定義一個(gè)“電動(dòng)車”類,它繼承了“汽車”類,,就自動(dòng)擁有了“汽車”類的所有屬性和方法,,比如顏色、型號(hào)等屬性,,啟動(dòng),、加速、剎車等方法,,然后我們還可以在“電動(dòng)車”類上增加一些新的屬性和方法,,比如電池容量、充電方法等,。
+ v8 K0 @# Q" M7 _( e9 X* e: }% C
3. 多態(tài)
多態(tài)是指同一操作作用于不同的對(duì)象,,可以有不同的解釋,產(chǎn)生不同的執(zhí)行結(jié)果,。比如,,我們定義了一個(gè)“汽車”類,,它有一個(gè)“啟動(dòng)”方法,然后我們又定義了一個(gè)“電動(dòng)車”類,,它繼承了“汽車”類,,也有一個(gè)“啟動(dòng)”方法,但是“電動(dòng)車”類的“啟動(dòng)”方法的實(shí)現(xiàn)可能與“汽車”類的不同,,這就是多態(tài),。
1 l. }" m( w& M
* z* @0 _/ g0 O8 w: j% C
( ]8 I! i9 ]6 H/ L8 k
面向?qū)ο缶幊痰睦砟?/strong>面向?qū)ο缶幊逃袃蓚(gè)主要的理念,基于接口編程和組合優(yōu)于繼承,。
- q3 E# s3 r; p3 G+ { H1 o
1. 基于接口編程
基于接口編程的理念是,,使用者不需要知道數(shù)據(jù)類型、結(jié)構(gòu)和算法的細(xì)節(jié),,只需要知道調(diào)用接口能夠?qū)崿F(xiàn)功能
,。這就像我們使用電視遙控器一樣,我們不需要知道遙控器內(nèi)部的電路設(shè)計(jì)和工作原理,,只需要知道按哪個(gè)按鈕可以打開電視,,按哪個(gè)按鈕可以調(diào)節(jié)音量。
/ s$ I1 A3 w4 m. T0 l
2. 組合優(yōu)于繼承
盡管繼承可以使我們更容易地重用和擴(kuò)展代碼,,但是如果繼承層次過深,、繼承關(guān)系過于復(fù)雜,就會(huì)嚴(yán)重影響代碼的可讀性和可維護(hù)性,。比如我們修改了基類,,就可能影響到繼承它的子類,這會(huì)增加迭代的風(fēng)險(xiǎn),。因此,,我們更傾向于使用組合而不是繼承。比如,,我們可以定義一個(gè)“電動(dòng)車”類,,它包含“電池系統(tǒng)”、“制動(dòng)系統(tǒng)”,、“車身系統(tǒng)”,、“轉(zhuǎn)向系統(tǒng)”等組件,而不是繼承“汽車”類,。
! |8 j3 G- M: I- J7 P
) Z( e: h1 h6 N0 k6 F( \
作者:
學(xué)者11
時(shí)間:
2024-10-4 14:34
你是不是還少說了幾個(gè):
+ r' v8 R& c/ j
抽象是指識(shí)別事物的本質(zhì)特征并將其從非本質(zhì)特征中分離出來的過程,。在OOP中,抽象通常通過創(chuàng)建抽象類或接口來實(shí)現(xiàn),,它們定義了一組通用的方法,,但沒有具體的實(shí)現(xiàn)。抽象幫助我們管理復(fù)雜性,,關(guān)注高層次的設(shè)計(jì),,而忽略不必要的細(xì)節(jié)。
5 p$ F/ Y( _$ ?: b
方法是與類或?qū)ο笙嚓P(guān)聯(lián)的函數(shù),,用于定義對(duì)象的行為,。它們可以訪問和修改對(duì)象的狀態(tài)。
, Q0 v7 G% j" w) L( F" z3 d
屬性是與類或?qū)ο笙嚓P(guān)聯(lián)的變量,,用于描述對(duì)象的狀態(tài),。在某些語言中,屬性可能被稱為字段(field),。
* G! ]3 h4 K! t3 B& F3 H
) U1 r) w/ u( {) k! P
關(guān)于理念,,是不是也少說了幾個(gè)。
/ E1 n- j( n! |) Q
模塊化是指將程序分解成獨(dú)立的,、可管理的部分(模塊),。每個(gè)模塊負(fù)責(zé)程序的一小部分功能。在面向?qū)ο缶幊讨�,,類是模塊的基本單位,。通過模塊化,開發(fā)者可以更容易地理解,、測(cè)試和維護(hù)代碼,。
+ r9 f5 F, P1 G4 q6 d
依賴注入是一種設(shè)計(jì)模式,它通過外部配置而非硬編碼來指定對(duì)象之間的依賴關(guān)系,。這有助于降低組件間的耦合度,,提高代碼的可測(cè)試性和可維護(hù)性。
# W7 M& \1 t V
開閉原則是面向?qū)ο笤O(shè)計(jì)的一個(gè)重要原則,,指出軟件實(shí)體(類,、模塊、函數(shù)等)應(yīng)該對(duì)擴(kuò)展開放,,對(duì)修改關(guān)閉,。這意味著應(yīng)該可以通過添加新代碼來擴(kuò)展系統(tǒng)的行為,而不需要修改現(xiàn)有代碼,。
/ ]) y' O% ?4 X- E. S. p* n
單一職責(zé)原則指出一個(gè)類應(yīng)該只有一個(gè)引起它變化的原因,。換句話說,一個(gè)類應(yīng)該只有一個(gè)職責(zé)或功能,。這有助于保持類的簡(jiǎn)潔性和可維護(hù)性,。
歡迎光臨 機(jī)械社區(qū) (http://97307.cn/)
Powered by Discuz! X3.4