第8章

大B:“那小師弟,麵向對象它都有些什麽特征哩?”

小A:“麵向對象的三個基本特征是:封裝、繼承、多態。”

大B:“嗯,是的。那你能不能用圖來說明?”

小A:“用圖來說明?可以的。下麵這個是我畫的圖,還得請師兄多指教。”

大B:“吼!不錯嘛。”

大B“其實學習編程也沒什麽難的,我一開始也不知道的,不過學做了軟件開發幾年後,遇多了,還有更改最初想法的事件,就慢慢明白了它的道理。”

小A:“嗬嗬……這就是經驗所得嘛!”

大B:“像你這麽好學,一定能學好的!在我們生活中接觸得最多是‘麵向對象編程技術’,而‘麵向對象編程技術’也是麵向對象技術中的一個組成部分。麵向對象技術需要麵向對象的分析,設計和編程技術,也需要借助必要的建模和開發工具。”

小A:“師兄,能不能給我講講麵向對象的優勢具體有哪些呐?”

大B想,好學的小師弟,想想自己當年要是也能像小師弟這麽好學的話,那肯定比現在學得好。

大B:“行呐!我講給你聽。1、要符合人們習慣的思維方法,便於分解大型的複雜多變的問題。由於對象對應於現實世界中的實體,因而可以很自然地按照現實世界中處理實體的方法來處理對象,軟件開發者可以很方便地與問題提出者進行溝通和交流。2、易於軟件的維護和功能的增減。對象的封裝性及對象之間的鬆散組合,都給軟件的修改和維護帶來了方便。3、可重用性好。重複使用一個類(類是對象的定義,對象是類的實例化),可以比較方便地構造出軟件係統,加上繼承的方式,極大地提高了軟件開發的效率。4、與可視化技術相結合,改善了工作界麵。隨著基於圖形界麵操作係統的流行,麵向對象的程序設計方法也將深入人心。它與可視化技術相結合,使人機界麵進入GUI時代。”

小A:“就如java語言,它都有哪些優點呐?”

大B:“java是目前最流行的語言不是沒有道理的。1、最為顯著的優點是它與平台無關。Java依靠它的運行庫(RunTimeLibrary)獲得了以往任何一種語言都沒有的平台無關性。同樣的代碼可以不用改動就可在Windows、Solaris、Unix等各種軟硬件平台上運行。2、另外一個顯著的優點是Java的類C++語法。Java從C++發展而來,對於當今世界上眾多的c++程序員來說,Java顯得並不陌生。3、麵向對象。Java語言是完全麵向對象的,區別於C++的‘半麵向對象’。目前麵向對象技術已經取代早期的結構化程序設計方法而成為計算機界的標準技術,因為事實證明麵向對象技術處理複雜問題的優勢遠非其他方法所能及。4、健壯。Java自已操縱內存減少了內存出錯的可能性。Java還實現了真數組,避免了覆蓋數據的可能。這些功能特征大大縮短了開發Java應用程序的周期。Java提供Null指針檢測數組邊界檢測異常出口字節代碼校驗。5、安全。java最重要的一點保證是:Java的安全體係架構。Java的安全性可從兩個方麵得到保證。一方麵,在Java語言裏,象指針和釋放內存等C++功能被刪除,避免了非法內存操作。另一方麵,當Java用來創建瀏覽器時,語言功能和瀏覽器本身提供的功能結合起來,使它更安全。6、多線程。簡言之為一項任務多點開工,多線程帶來的更大的好處是更好的交互性能和實時控製性能。在Java裏,你可用一個單線程來調一副圖片,而你可以訪問HTML裏的其它信息而不必等它。7、動態。Java的動態特性是其麵向對象設計方法的發展。它允許程序動態地裝入運行過程中所需要的類,這是C++語言進行麵向對象程序設計所無法實現的。”

小A:“哇噻!你不說我還真不知道java語言還有這麽多優點哩!嘿嘿!也真難怪現在最流行它了。”

大B:“是啊!不管哪種語言都有各自的優缺點,java的缺點就是編譯、執行的速度太慢,所以java私塾建議你如果想學編程,不要總是問這個好不好,那個難不難,隻要下定決心學就對了。”