大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私塾建議你如果想學程式設計,不要總是問這個好不好,那個難不難,只要下定決心學就對了。”