java是什么 面向過程和面向?qū)ο蟮膮^(qū)別和聯(lián)系?
面向過程和面向?qū)ο蟮膮^(qū)別和聯(lián)系?區(qū)別:面向?qū)ο髠?cè)重于數(shù)據(jù)的使用。嘗試將數(shù)據(jù)及其操作封裝在一起(類),并嘗試自動處理一些不同函數(shù)的調(diào)用工作(多態(tài)性、重載等),以減少對函數(shù)的依賴。面向過程語言側(cè)重于函數(shù)(
面向過程和面向?qū)ο蟮膮^(qū)別和聯(lián)系?
區(qū)別:面向?qū)ο髠?cè)重于數(shù)據(jù)的使用。
嘗試將數(shù)據(jù)及其操作封裝在一起(類),并嘗試自動處理一些不同函數(shù)的調(diào)用工作(多態(tài)性、重載等),以減少對函數(shù)的依賴。面向過程語言側(cè)重于函數(shù)(函數(shù)模塊)的應(yīng)用。近年來,一些面向函數(shù)的語言開始復(fù)蘇(如f#)。也可以看出,面向過程語言的側(cè)重點是不同的,每個側(cè)重點都有自己的領(lǐng)域和優(yōu)勢。連接:事實上,連接可以在不同的情況下看到。面向?qū)ο笾皇菍?shù)據(jù)和函數(shù)進行“打包”,記錄一些自動判斷和調(diào)用“函數(shù)”的功能。因此,面向?qū)ο笠彩墙⒃诤瘮?shù)的基礎(chǔ)上的,這只會削弱開發(fā)人員對函數(shù)的依賴,把注意力轉(zhuǎn)向數(shù)據(jù)。
怎么理解“面向?qū)ο蟆焙汀懊嫦蜻^程”?
首先,讓我們從編程語言的角度來看兩者的區(qū)別。
最典型的面向過程編程語言是C語言,面向?qū)ο笳Z言包括C、Java、C#。
在C語言中,基本數(shù)據(jù)類型是變量、數(shù)組、結(jié)構(gòu)和函數(shù)。在使用這些數(shù)據(jù)類型進行編程時,主要考慮的是如何將要處理的數(shù)據(jù)放入適當(dāng)?shù)臄?shù)據(jù)類型中,并根據(jù)事件的順序調(diào)用函數(shù)來完成業(yè)務(wù)邏輯的處理。
在面向?qū)ο笳Z言中,最重要的概念是類,類實例化的結(jié)果是對象。在設(shè)計過程中,這種語言涉及到很多現(xiàn)實生活中的處理模型。例如,汽車是一個非常抽象的對象,但奔馳和寶馬是非常具體的。這些車可以分為高配置和低配置,并且可以駕駛。
這些汽車模型對應(yīng)于基類、派生類、屬性和方法的概念。因此,在使用面向?qū)ο缶幊虝r,數(shù)據(jù)的合理封裝是其主要的核心工作。
綜上所述,面向過程編程的核心技術(shù)是數(shù)據(jù)結(jié)構(gòu)和算法;面向?qū)ο缶幊痰暮诵募夹g(shù)是23種設(shè)計模式。我們必須熟練地掌握它!