【java編程思想--學習筆記(四)】對象導論

來源:互聯網
上載者:User

標籤:java

寫這篇部落格的前言:
長話短說,我希望通過閱讀《java編程思想》來使My Code 簡潔可用 。
目的的層次不同,首先具體的目標是,瞭解Java的特性和鞏固Java的基礎。
更抽象的目的如下:
1、期待以鞏固基礎的方式,使代碼優美,簡潔,高效。
2、使自己寫的模組能夠開放適度,好用。
3、形成一種對代碼是否優美的審美觀。

於是《Java編程思想》第一章 對象導論 由此開始。

1.1 抽象過程
java 相對於命令式語言的優勢在於只針對於待解問題建模。後者所做的主要抽象要求所做問題基於電腦結構,程式員必須在機器模型(例如電腦)和實際待解決模型(在“問題空間內”,即問題存在的地方,例如一項業務)之間建立聯絡。
物件導向的方式,允許我們通過添加新類型的對象是自身適用於某個特定問題。
物件導向語言的五個基本特性:…..;

1.2 每個對象都有一個介面
類描述了具有相同特性(資料元素)和行為(功能)的對象集合。
而對對象產生的請求,使對象完成某種任務等請求,我們稱之為介面。
這裡我們需要區分介面產生的方法和類內在行為產生的方法。類內在行為產生的方法的大部分共有方法是介面對對象的請求。

1.2 每個對象都提供服務
當試圖開發和理解一個程式設計時,最好的辦法之一就是將對象想象成“服務提供者”。程式本身向使用者提供服務,他通過調用其他對象所提供的服務來實現這個目的。我的目標就是建立(最好是在現有程式碼程式庫中尋找)能夠提供理想服務來解決問題的一系列對象。
我想這就是我在程式設計中類設計的目標:
能夠向其他程式模組提供理想服務,而不只是向其他合作的程式員,這是可用性的目標。

另一個好處便是提高內聚性。(內聚性是指一個系統各個方面“組合得很好”) 這要求我們的程式每個對象都能很好的完成一項任務,但是它並不試圖做更多的事。

1.4 被隱藏的具體實現
將程式員按角色劃分為類建立者和用戶端程式員。
我想用戶端程式員提出的就是介面所要求的方法,其他類對象的行為和功能的具體實現,用戶端程式員不需要關心。
基於角色和不同角色對類的需求不同,出現存取控制的功能。

1.5 複用的具體實現
組合(與繼承所不同)
(“彙總”動態組合,“組合”:“has-a”)

1.6 繼承
“繼承”的理解,具有相似功能的兩個類,避免重複的處理方式。
繼承,繼承了功能,更繼承了介面。
同時有兩種方法說明兩個類的差別,添加方法和覆蓋方法。

1.7 伴隨多態的可互換對象

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

【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.