日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

初学者的困惑:OOP与一般编程的区别

發(fā)布時(shí)間:2025/4/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 初学者的困惑:OOP与一般编程的区别 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

*在寫《程序猿的思維修煉》隨筆中,我們大概猜想到了,OOP的思想更趨于模塊化,更獨(dú)立,因此稱為一個(gè)個(gè)對(duì)象,本次隨筆將對(duì)OOP和一般編程的區(qū)別有更詳細(xì)的解釋

?

面向?qū)ο缶幊痰暮x:

  面向?qū)ο缶幊淌莿?chuàng)建計(jì)算機(jī)應(yīng)用程序的一種相當(dāng)新的方法,它解決了傳統(tǒng)編程技巧帶來的許多問題。一般的的編程方法稱為函數(shù)(或過程)化編程,常常會(huì)導(dǎo)致所謂的單一應(yīng)用程序,即所有的功能都包含在幾個(gè)代碼模塊中(常常是一個(gè)代碼模塊)。而使用OOP技術(shù),常常要使用許多代碼模塊,每個(gè)模塊都提供特定的功能,每個(gè)模塊都是孤立的,甚至與其他模塊完全獨(dú)立。這種模塊化編程方法提供了非常大的多樣性,大大增加了重用代碼的機(jī)會(huì)。

  要進(jìn)一步說明這個(gè)問題,假定計(jì)算機(jī)上的一個(gè)高性能應(yīng)用程序是一輛一流賽車。如果使用傳統(tǒng)的編程技巧,這輛賽車就是一個(gè)單元。如果要改進(jìn)該車,就必須替換整車,把它送回廠商那里,讓汽車專家升級(jí)它,或者購(gòu)買一輛新車。如果使用OOP技術(shù),就只需從廠商處購(gòu)買新的引擎,自己按照其說明替換它,而不必用鋼鋸切割車體。

  在傳統(tǒng)的應(yīng)用程序中,執(zhí)行流常常是簡(jiǎn)單的、線性的。把應(yīng)用程序加載到內(nèi)存中,從A點(diǎn)開始執(zhí)行,在B點(diǎn)結(jié)束,然后從內(nèi)存中卸載,在這個(gè)過程中可能用到其他各種實(shí)體,例如存儲(chǔ)介質(zhì)上的文件或顯卡的功能,但處理的主體總是位于一個(gè)地方。此時(shí)的代碼一般與使用各種數(shù)學(xué)和邏輯方式處理數(shù)據(jù)相關(guān)。處理方法通常比較簡(jiǎn)單,使用基本的數(shù)據(jù)類型,例如整型和布爾值,建立比較復(fù)雜的數(shù)據(jù)表達(dá)方式。

  而使用OOP,事情就不是這么直接了。盡管可以獲得相同的效果,但其實(shí)現(xiàn)方式是完全不同的。OOP技術(shù)以結(jié)構(gòu)、數(shù)據(jù)的含義以及數(shù)據(jù)和數(shù)據(jù)之間的交互操作為基礎(chǔ)。這通常意味著要把更多的精力放在項(xiàng)目的設(shè)計(jì)階段,但項(xiàng)目的可擴(kuò)展性比較高。一旦對(duì)某種類型的數(shù)據(jù)的表達(dá)方式達(dá)成一致,這種表達(dá)方式就會(huì)應(yīng)用到應(yīng)用程序以后的版本中,甚至是全新的應(yīng)用程序中。這種一致的表達(dá)方式可以大大減少開發(fā)時(shí)間。這就是上述賽車示例的工作原理。這里的一致是"引擎"的代碼是結(jié)構(gòu)化的,這樣就可以很容易地替換成新代碼(即新引擎),而不需要找廠商幫忙。這也表示,引擎創(chuàng)建出來后可以用于其他目的,可以把它安裝到另一輛車上,或者用它驅(qū)動(dòng)潛艇。

  除了數(shù)據(jù)表達(dá)方式的一致性外,OOP編程還常常可以簡(jiǎn)化任務(wù),因?yàn)檩^抽象實(shí)體的結(jié)構(gòu)和用法也是一致的。例如,不僅把輸出結(jié)果發(fā)送給設(shè)備(如打印機(jī))所使用的數(shù)據(jù)格式是一致的,而且與該設(shè)備交換數(shù)據(jù)的方法也是一致的,這包括它理解的指令等等。回到賽車的示例上,要達(dá)成的一致包括引擎如何連接到油箱上,如何把驅(qū)動(dòng)力傳送給車輪等。

  顧名思義,OOP技術(shù)要使用對(duì)象。

?

面向?qū)ο蟮乃膫€(gè)基本特征:

    ①抽象:抽象就是忽略一個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以便更充分地注意與當(dāng)前目標(biāo)有關(guān)的方面。抽象并不打算了解全部問題,而只是選擇其中的一部分,暫時(shí)不用部分細(xì)節(jié)。比如,我們要設(shè)計(jì)一個(gè)學(xué)生成績(jī)管理系統(tǒng),考察學(xué)生這個(gè)對(duì)象時(shí),我們只關(guān)心他的班級(jí)、學(xué)號(hào)、成績(jī)等,而不用去關(guān)心他的身高、體重這些信息。抽象包括兩個(gè)方面,一是過程抽象,二是數(shù)據(jù)抽象。過程抽象是指任何一個(gè)明確定義功能的操作都可被使用者看作單個(gè)的實(shí)體看待,盡管這個(gè)操作實(shí)際上可能由一系列更低級(jí)的操作來完成。數(shù)據(jù)抽象定義了數(shù)據(jù)類型和施加于該類型對(duì)象上的操作,并限定了對(duì)象的值只能通過使用這些操作修改和觀察。

    ②繼承:繼承是一種聯(lián)結(jié)類的層次模型,并且允許和鼓勵(lì)類的重用,它提供了一種明確表述共性的方法。對(duì)象的一個(gè)新類可以從現(xiàn)有的類中派生,這個(gè)過程稱為類繼承。新類繼承了原始類的特性,新類稱為原始類的派生類(子類),而原始類稱為新類的基類(父類)。派生類可以從它的基類那里繼承方法和實(shí)例變量,并且類可以修改或增加新的方法使之更適合特殊的需要。這也體現(xiàn)了大自然中一般與特殊的關(guān)系。繼承性很好的解決了軟件的可重用性問題。比如說,所有的Windows應(yīng)用程序都有一個(gè)窗口,它們可以看作都是從一個(gè)窗口類派生出來的。但是有的應(yīng)用程序用于文字處理,有的應(yīng)用程序用于繪圖,這是由于派生出了不同的子類,各個(gè)子類添加了不同的特性。

    ③封裝:封裝是面向?qū)ο蟮奶卣髦?#xff0c;是對(duì)象和類概念的主要特性。封裝是把過程和數(shù)據(jù)包圍起來,對(duì)數(shù)據(jù)的訪問只能通過已定義的界面。面向?qū)ο笥?jì)算始于這個(gè)基本概念,即現(xiàn)實(shí)世界可以被描繪成一系列完全自治、封裝的對(duì)象,這些對(duì)象通過一個(gè)受保護(hù)的接口訪問其他對(duì)象。一旦定義了一個(gè)對(duì)象的特性,則有必要決定這些特性的可見性,即哪些特性對(duì)外部世界是可見的,哪些特性用于表示內(nèi)部狀態(tài)。在這個(gè)階段定義對(duì)象的接口。通常,應(yīng)禁止直接訪問一個(gè)對(duì)象的實(shí)際表示,而應(yīng)通過操作接口訪問對(duì)象,這稱為信息隱藏。事實(shí)上,信息隱藏是用戶對(duì)封裝性的認(rèn)識(shí),封裝則為信息隱藏提供支持。封裝保證了模塊具有較好的獨(dú)立性,使得程序維護(hù)修改較為容易。對(duì)應(yīng)用程序的修改僅限于類的內(nèi)部,因而可以將應(yīng)用程序修改帶來的影響減少到最低限度。

    ④多態(tài):多態(tài)性是指允許不同類的對(duì)象對(duì)同一消息作出響應(yīng)。比如同樣的加法,把兩個(gè)時(shí)間加在一起和把兩個(gè)整數(shù)加在一起肯定完全不同。又比如,同樣的選擇編輯-粘貼操作,在字處理程序和繪圖程序中有不同的效果。多態(tài)性包括參數(shù)化多態(tài)性和包含多態(tài)性。多態(tài)性語(yǔ)言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢(shì),很好的解決了應(yīng)用程序函數(shù)同名問題。

?

面向?qū)ο蟮膬?yōu)點(diǎn):

  ①開發(fā)時(shí)間短,效率高,可靠性高,所開發(fā)的程序更強(qiáng)壯。由于面向?qū)ο缶幊痰目芍赜眯?#xff0c;可以在應(yīng)用程序中大量采用成熟的類庫(kù),從而縮短了開發(fā)時(shí)間。
  ②應(yīng)用程序更易于維護(hù)、更新和升級(jí)。繼承和封裝使得應(yīng)用程序的修改帶來的影響更加局部化。

?

轉(zhuǎn)載于:https://www.cnblogs.com/yimengxianzhi/p/7802021.html

總結(jié)

以上是生活随笔為你收集整理的初学者的困惑:OOP与一般编程的区别的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人黄色在线播放 | 国产高清色 | 黄色aaa毛片 | 超碰在线免费公开 | 蜜桃久久久aaaa成人网一区 | 精品一区二区成人免费视频 | 一级片免费观看 | 美女一区二区三区视频 | 精品人人妻人人澡人人爽牛牛 | 搡国产老太xxx网站 高h喷汁呻吟3p | 久草欧美视频 | 欧美精品二区三区 | 自拍偷拍第1页 | 欧美性受黑人性爽 | 国产人久久人人人人爽 | 欧美精品免费在线 | 中文一区在线观看 | 国产精品偷乱一区二区三区 | 福利在线免费 | 国产一区91 | 一区二区在线观看免费视频 | 精品二三区 | 国产美女视频网站 | 无码一区二区波多野结衣播放搜索 | 二区三区在线观看 | 在线看日韩av | 国产福利在线观看视频 | 91成人一区二区三区 | 国产乱淫av片免费 | 18成人免费观看网站下载 | 国产在线视频99 | 久久精品视频免费观看 | 久久综合成人 | 无码免费一区二区三区免费播放 | 色干综合 | 色在线影院 | 中文字幕一区二区在线视频 | 伊人影院综合 | 国产免费二区 | 亚洲欧美婷婷 | 黄色高清视频在线观看 | 一本色道久久综合亚洲精品酒店 | 亚洲天堂男人 | 伊人亚洲精品 | 成人亚洲精品777777ww | 日韩欧美一卡二卡 | 成人做爰100| 亚洲乱码久久 | 一区二区视频在线观看免费 | www.日本高清 | 欧美人与性禽动交精品 | 一区二区三区四区亚洲 | 欧美成人午夜影院 | 久久久1 | 久久精品国产免费 | 欧美妞干网 | 激情视频一区二区 | 老司机午夜免费精品视频 | 天堂成人国产精品一区 | 黄色伊人 | 欧美v视频 | 51人人看| xxx在线播放 | 无套内谢少妇高潮免费 | 91国语对白| 国产五区 | 91视频二区 | 亚洲精品国 | av色区 | 欧美资源网| 日韩啪啪网站 | 日韩精品在线网站 | 狠狠爱综合 | 蜜臀av在线播放 | 97在线免费观看 | 精品视频在线观看 | 日韩精品1区2区 | 朴麦妮原版视频高清资源 | 亚洲图片偷拍区 | 色眯眯视频 | 亚洲国产剧情 | 亚洲一区二区三 | 欧美一级免费大片 | 九九精品视频在线观看 | 假日游船 | 国产三区在线成人av | 色接久久| 黄色小视频网 | 日本丰满少妇一区二区三区 | 澳门av网站| 欧美黄色录像带 | 麻豆免费在线观看 | 日韩欧美国产精品综合嫩v 国产小毛片 | 69精品视频 | 久草国产在线 | 2025韩国大尺度电影 | 熟女性饥渴一区二区三区 | 国产男女猛烈无遮挡免费视频动漫 | 亚洲成人日韩在线 |