Java編程那些事兒57—物件導向基礎

來源:互聯網
上載者:User
 

Java編程那些事兒57—物件導向基礎

鄭州遊戲學院 陳躍峰

出自:http://blog.csdn.net/mailbomb

第八章 物件導向

         在程式中,最核心的是資料結構和演算法,不同的程式需要根據需要設計不同的資料結構,然後依賴程式的功能以及資料結構設計對應的演算法,這種設計方式是程式的底層設計,也就是解決具體的功能。

         當程式項目複雜到一定程度時,就不僅要專註於底層的設計,更要對程式的結構進行設計,物件導向(Object-Oriented,簡稱OO)就是一種常見的程式結構設計方法。

         物件導向思想的基礎是將相關的資料和方法放在一起,組合成一種新的複合資料型別,然後使用新建立的複合資料型別作為項目的基礎。

8.1  物件導向簡介

         前面介紹的有關Java語言的基礎知識,只是程式的基礎知識,而本章介紹的物件導向的相關知識,則是和設計有關的知識。

         物件導向的設計方式採用的是從外到內的設計方式,先設計整個項目的結構,然後再根據關聯關注內部的每個細節。再分解整個項目時,也是按照模組化進行分解的。就像要製造一輛汽車,物件導向的設計思路是這樣的:首先汽車要生產發動機、變速箱等模組,然後再去考慮每個模組的具體實現。使用這種設計思路,把每個部分都模組化,便於將功能進行分解,可以開發更複雜的項目。

         再將模組劃分出來以後,然後就來設計每個具體的模組,再設計模組時,如果模組還很複雜,則可以繼續進行分解。如果模組已經劃分的足夠細緻了,那麼就可以進行具體的設計了。

         設計具體模組的方式是確定模組需要的核心資料的結構,以及該模組需要具備的功能,也就是本章一開始提到的資料結構和演算法,使每個模組都成為一個獨立的完整結構,可以向其它的模組提供對應的服務(功能)。

         整個系統(項目)則通過模組之間的互相關聯運轉起來,而每個模組只需要開放一個介面給其它的模組即可。

         上面提到的就是物件導向的設計方式,總結起來是兩大部分:

l  模組劃分

l  模組實現

在具體的物件導向編程(Object-Oriented Programm,簡稱OOP)中,劃分出來的每個模組一般稱為類(class),而模組內部的資料稱為field,一般稱為屬性,模組內部的功能一般稱為方法(method)。

按照物件導向的設計方式,在實際的項目開發過程中,物件導向技術一般分為3個部分:

l  物件導向分析(Object-Oriented Analysis,簡稱OOA)

該步驟按照物件導向的思考方式提取項目的需求資訊,一般由系統分析員負責,本部分形成文檔為《項目需求分析說明書》。

l  物件導向設計(Object-Oriented Design,簡稱OOD)

該步驟按照《項目需求分析說明書》進行模組劃分,以及進行模組的概要設計,一般由進階程式員負責,本部分形成文檔為《項目概要設計說明書》。

l  物件導向編程(Object-Oriented Programm,簡稱OOP)

該步驟按照《項目概要設計說明書》細化每個模組的結構,一般由程式員負責,本部分形成文檔為《項目詳細設計說明書》。

最後由編碼員(Coder)按照《項目詳細設計說明書》進行具體的編碼。這個就是物件導向開發的標準流程的簡單描述。

而實際的程式開發過程中,則更關注於OOP部分,也就是實際實現時的具體設計以及編碼的問題。

物件導向技術除了這些設計方式以外,還有很多的概念和文法知識需要在編程時進行學習,下面以Java語言的文法為基礎來介紹物件導向編程的內容。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.