Java編程思想:面向?qū)ο蟮倪壿嬎季S方法_第1頁
Java編程思想:面向?qū)ο蟮倪壿嬎季S方法_第2頁
Java編程思想:面向?qū)ο蟮倪壿嬎季S方法_第3頁
Java編程思想:面向?qū)ο蟮倪壿嬎季S方法_第4頁
Java編程思想:面向?qū)ο蟮倪壿嬎季S方法_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Java 編程思想:面向?qū)ο蟮倪壿嬎季S方法什么是面向?qū)ο蟮脑O(shè)計(jì)思想?也許有不少初學(xué)者對這個(gè)概念還有許多不明白的地方,特別是這個(gè)處于新舊思想交替的時(shí)代,許多人剛剛學(xué)完現(xiàn)在看來是快要淘汰的只是面向過程的語言。他們的腦子還沒有脫離面向過程思想的束縛,抬頭卻發(fā)現(xiàn), 面向?qū)ο?早已經(jīng)流行開來, 這個(gè)陌生的詞漫天飛舞。 隨便拿起一本流行計(jì)算機(jī)技術(shù)書籍,那里會(huì)沒有面向?qū)ο?的字眼 !于是心中便惶惑了:什么叫 面向?qū)ο?不感興趣者,一帶而過;有志于在這方面發(fā)展的,匆忙找到一本有關(guān)書籍來啃究竟什么是面向?qū)ο?。然而,要突破思想的束縛,說難也不難, 說到要深刻認(rèn)識(shí)卻也不容易。 筆者在做了一些輕量級(jí)的工作后,頗以為

2、有點(diǎn)心得,不怕貽笑大方,寫出已供廣大同行批評(píng)指正。 對象 (Object) 一詞,早在十九世紀(jì)就有現(xiàn)象學(xué)大師胡塞爾提出并定義。對象是世界中的物體在人腦中的映象,是人的意識(shí)之所以為意識(shí)的反映,是做為一種概念而存在的先念的東西,它還包括了人的意愿。舉例說明吧。當(dāng)我們認(rèn)識(shí)到一種新的物體,它叫樹,于是在我們的意識(shí)當(dāng)中就形成了樹的概念。這個(gè)概念會(huì)一直存在于我們的思維當(dāng)中,并不會(huì)因?yàn)檫@棵樹被砍掉而消失。這個(gè)概念就是現(xiàn)實(shí)世界當(dāng)中的物體在我們意識(shí)當(dāng)中的映象。我們對它還可以有我們自己的意愿,雖然我們并不需要付諸實(shí)現(xiàn)- 只要在你的腦中想著把這棵樹砍掉做成桌子、凳子等- 我們就把它叫做意向。于是,對象就是客觀世界中

3、物體在人腦中的映象及人的意向。只要這個(gè)對象存在我們的思維意識(shí)當(dāng)中,我們就可以籍此判斷同類的東西。譬如,當(dāng)我們看到另外一棵樹是,并不會(huì)因?yàn)樗姷牡谝豢脴洳辉诹耸チ斯﹨⒄盏哪0宥徽J(rèn)識(shí)這棵樹了。當(dāng)我們接觸某些新事物時(shí),我們的意識(shí)就會(huì)為這些事物確立一個(gè)對象。當(dāng)然這個(gè)過程是怎么形成的,那就不是我們所能討論的問題了。上面所說的對象研究的是一般意義上的問題,因而它可以外推到一切事物。我們經(jīng)常所說的 對象 ,一班指的是解決信息領(lǐng)域內(nèi)所遇到問題的方法。特別是應(yīng)用軟件技術(shù)來決問題的方法。如我們經(jīng)常碰到的面向?qū)ο蟮木幊?Object-Oriented Programming) 、 面向?qū)ο蟮姆治?Object-

4、Oriented Analysis)、面向?qū)ο蟮脑O(shè)計(jì)(Object-Oriented Design) 等。應(yīng)用前面所介紹的關(guān)于對象的概念,可以對這些問題做進(jìn)一步的分析。在面對較復(fù)雜的系統(tǒng),我們可以將它作為一個(gè)對象來進(jìn)行分析。 一個(gè)系統(tǒng)(解決某個(gè)問題的全套解決方案)作為一個(gè)對象,可以由多個(gè)部分組成。同樣,這個(gè)對象也可以由多個(gè)對象組成。對于同類的事物,可以由一個(gè)對象來表示。這樣做的益處是顯而易見的,它靈活而高效,可以大大減輕設(shè)計(jì)人員的工作量,簡化實(shí)際的模型。舉一個(gè)例子。在關(guān)系型數(shù)據(jù)庫的設(shè)計(jì)當(dāng)中,我們可以把一個(gè)元組當(dāng)作對象,給它定義一組操作方法。這些方法將適用于所有元組, 從而我們不必在更大的范圍內(nèi)

5、去細(xì)致的考慮不同的元組(如判斷一個(gè)元素是否合法): 因?yàn)樗鼈冇幸唤M公共的面向本身的方法, 它們 自己可以解決 自己的問題。更上一層的對象可以是一個(gè)表、視圖等。表對象在元組對象的基礎(chǔ)上又有它們自己的方法,如增加、刪除等。從這個(gè)層面上講,它也只需要做 自己 的事情,因?yàn)橛性M對象的支持,它無須去考慮像元素是否合法這類的事情。甚至,有時(shí)為了滿足我們還可以將元素或表群當(dāng)作時(shí)對象并定義它們自己的方法。這樣,更能顯示面向?qū)ο蟮膬?yōu)勢。上面所討論的可以說是面向?qū)ο蟮姆治龇椒?。在具體的設(shè)計(jì)過程當(dāng)中, 還應(yīng)該采用適當(dāng)?shù)姆绞健?因?yàn)槊嫦驅(qū)ο蟮乃枷牍倘缓芟冗M(jìn),如果做得不好的話,同樣不能達(dá)到預(yù)期的效果。這主要表現(xiàn)在處理

6、對象與對象的關(guān)系上沒有做好,對象與對象的層次不分明。如上面所舉得關(guān)系型數(shù)據(jù)庫得例子,如果在元組層面上得對象過多得考慮一個(gè)表對象得因素,或一個(gè)表層面上對象過多地考慮一個(gè)元組對象的因素,甚至去考慮元素層面上的因素, 這些都不是好的面向?qū)ο蟮脑O(shè)計(jì)方法。這一點(diǎn),在語言實(shí)現(xiàn)方面, Java 比 C+ 更有優(yōu)勢,因?yàn)樗辉试S多重繼承, 從而使對象之間的關(guān)系更明確。 誰也不會(huì)否認(rèn)C+ 的功能更強(qiáng)大, 但是它也要由次付出巨大代價(jià)- 當(dāng)現(xiàn)在代碼庫發(fā)展到一定程度、一定規(guī)模時(shí),個(gè)對象之間的層次關(guān)系將變得異常復(fù)雜,給后繼使用者得學(xué)習(xí)、理解帶來很大的困難,應(yīng)用上很難把握。另外,雖然C+具備面向?qū)ο蟮奶幚砟芰Γ€是保

7、留了很多面向過程的東西。用C+ 完全可以不用面向?qū)ο蟮乃枷雭磉M(jìn)行程序設(shè)計(jì), 當(dāng)然人們不會(huì)這樣去做 - 除了那些只是把C+ 看成是 C 擴(kuò)充的初學(xué)者, 這就為以后的發(fā)展埋下了隱患。在者一方面, Java 的限制更多一點(diǎn)。就者一點(diǎn)還遠(yuǎn) 遠(yuǎn)不夠。搞開發(fā)的是人,開發(fā)方法是由人決定的。要應(yīng)用面向?qū)ο蟮姆椒ㄩ_發(fā)出優(yōu)秀的軟件,必須要求開發(fā)人員具有良好的面向?qū)ο蟮乃枷?。好的工程師可以利用適當(dāng)?shù)墓ぞ唛_發(fā)出優(yōu)秀的軟件 - 而不在乎他所使用的語言工具-Java 、 C+ 、 Object Pascal 、 Ada 等。Word是學(xué)生和職場人士最常用的一款辦公軟件之一,99.99% 的人知道它,但其實(shí),這個(gè)軟件背后,還有一大批隱藏技能你不知道。掌握他們,你將開啟新世界的大門。Tab+Enter,在編過號(hào)以后,會(huì)自動(dòng)編號(hào)段落Ctrl + D 調(diào)出字體欄,配合 Tab+Enter 全鍵盤操作吧Ctrl + L 左對齊, Ctrl + R 右對齊, Ctrl + E 居中Ctrl + F 查找,Ctrl + H 替換。然后關(guān)于替換,里面又大有學(xué)問!有時(shí)候Word文檔中有許多多余的空行需要?jiǎng)h除,這個(gè)時(shí)候我們可以完全可以用查找替換”來輕松解決。打開 編輯”菜單中的 替換”對話框,把光標(biāo)定位在 查找內(nèi)容”輸入框中,單擊 高級(jí)”按鈕,選擇 特 殊字符”中的 段落標(biāo)記”兩次,在輸入框中會(huì)顯示 PAP,然后

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論