明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

面向?qū)ο缶幊?我的思想(1)

[摘要]前言:整理這份資料的目的是為了幫助朋友們能夠更直觀的理解面向?qū)ο蟮木幊。讓后來者能夠少走一些彎路。但其中不免有許多漏洞及錯(cuò)誤,也還請(qǐng)前輩提出寶貴的更改意見,畢竟交流會(huì)讓我們不斷的進(jìn)步。技術(shù)是日新月異的,他不會(huì)等待你的成長(zhǎng)。技術(shù)要拿出來于別人交流,自己學(xué)是自己主觀意識(shí)上的理解,有對(duì)有錯(cuò)!交流會(huì)讓進(jìn)步...

前言:整理這份資料的目的是為了幫助朋友們能夠更直觀的理解面向?qū)ο蟮木幊。讓后來者能夠少走一些彎路。但其中不免有許多漏洞及錯(cuò)誤,也還請(qǐng)前輩提出寶貴的更改意見,畢竟交流會(huì)讓我們不斷的進(jìn)步。技術(shù)是日新月異的,他不會(huì)等待你的成長(zhǎng)。技術(shù)要拿出來于別人交流,自己學(xué)是自己主觀意識(shí)上的理解,有對(duì)有錯(cuò)!交流會(huì)讓進(jìn)步變得更快。我認(rèn)為如果計(jì)算機(jī)的體系結(jié)構(gòu)不發(fā)生革命性的變化,我們現(xiàn)在所應(yīng)用的程序語言也就百變不離奇蹤了!學(xué)編程學(xué)的是什么?思想!精通一門編程語言(最好是面向?qū)ο蟮恼Z言)后再去搞其他的編程語言,你會(huì)發(fā)現(xiàn)過程是如此的行云流水!為什么?你已經(jīng)把編程的思想掌握了,再去學(xué)其他的,無非是學(xué)習(xí)一種新的語法格式了。我在這里并不是和你討論怎么去用C++或JAVA,也不是和你討論怎么去學(xué)他們,我要和你討論的是怎么去理解面向?qū)ο。其中主要?huì)涉及到“類、對(duì)象、繼承、屬性、方法、靜態(tài)、重載、隱藏、重構(gòu)、聲明、定義、初始化、賦值等”其中有許多相關(guān)技術(shù)我只會(huì)一代而過,讓你有一種到此一游的意味我就達(dá)到目的了,而更詳細(xì)的技術(shù)內(nèi)幕,就請(qǐng)參考其他相關(guān)書籍而深入研究吧!因?yàn)槲抑皇窃诤湍闾接懭绾稳ジ玫睦斫饷嫦驅(qū)ο螅∪绾稳ヌ岣咝?重?fù)使用資源,把別人的東西拿來就用。這是很不錯(cuò)的主意!而對(duì)于你來說,最大的資源就是信心以及積極性!好,打起精神來,讓我們一同到面向?qū)ο蟮木幊讨腥び脑L勝吧!注:文章中所有程序?qū)嵗叶际褂肑AVA寫的,當(dāng)然在C++中也就大同小異了了,不同的地方我會(huì)指出!注:文章中的正文文字用黑色,說明文字用藍(lán)色,強(qiáng)調(diào)文字用橙色,批改文字用紅色!正文:1.基本概念:1.1 類與對(duì)象的初探要我說,無論是面向過程的語言也好,面向?qū)ο蟮恼Z言也罷,我首先要給他講的都是類和對(duì)象!--------“這個(gè)世界是由什么組成的?”這個(gè)問題如果讓不同的人來回答會(huì)得到不同的答案。如果是一個(gè)化學(xué)家,他也許會(huì)告訴你“還用問嘛?這個(gè)世界是由分子、原子、離子等等的化學(xué)物質(zhì)組成的”。如果是一個(gè)畫家呢?他也許會(huì)告訴你,“這個(gè)世界是由不同的顏色所組成的”!呛牵娬f紛紜吧!但如果讓一個(gè)分類學(xué)家來考慮問題就有趣的多了,他會(huì)告訴你“這個(gè)世界是由不同類型的物與事所構(gòu)成的”好!作為面向?qū)ο蟮某绦騿T來說,我們要站在分類學(xué)家的角度去考慮問題!是的,這個(gè)世界是由動(dòng)物、植物等組成的。動(dòng)物又分為單細(xì)胞動(dòng)物、多細(xì)胞動(dòng)物、哺乳動(dòng)物等等,哺乳動(dòng)物又分為人、大象、老虎……就這樣的分下去了!現(xiàn)在,站在抽象的角度,我們給“類”下個(gè)定義吧!我的意思是,站在抽象的角度,你回答我“什么是人類?”首先讓我們來看看人類所具有的一些特征,這個(gè)特征包括屬性(一些參數(shù),數(shù)值)以及方法(一些行為,他能干什么!)。每個(gè)人都有身高、體重、年齡、血型等等一些屬性。人會(huì)勞動(dòng)、人都會(huì)直立行走、人都會(huì)用自己的頭腦去創(chuàng)造工具等等這些方法!人之所以能區(qū)別于其它類型的動(dòng)物,是因?yàn)槊總(gè)人都具有人這個(gè)群體的屬性與方法!叭祟悺敝皇且粋(gè)抽象的概念,它僅僅是一個(gè)概念,它是不存在的實(shí)體!但是所有具備“人類”這個(gè)群體的屬性與方法的對(duì)象都叫人!這個(gè)對(duì)象“人”是實(shí)際存在的實(shí)體!每個(gè)人都是人這個(gè)群體的一個(gè)對(duì)象。老虎為什么不是人?因?yàn)樗痪邆淙诉@個(gè)群體的屬性與方法,老虎不會(huì)直立行走,不會(huì)使用工具等等!所以說老虎不是人!由此可見-------類描述了一組有相同特性(屬性)和相同行為(方法)的對(duì)象。在程序中,類實(shí)際上就是數(shù)據(jù)類型!例如:整數(shù),小數(shù)等等。整數(shù)也有一組特性和行為。面向過程的語言與面相對(duì)象的語言的區(qū)別就在于,面向過程的語言不允許程序員自己定義數(shù)據(jù)類型,而只能使用程序中內(nèi)置的數(shù)據(jù)類型!而為了模擬真實(shí)世界,為了更好的解決問題,往往我們需要?jiǎng)?chuàng)建解決問題所必需的數(shù)據(jù)類型!面向?qū)ο缶幊虨槲覀兲峁┝私鉀Q方案。