(原)java對象與類(OOP)

來源:互聯網
上載者:User
  對象的三個主要特徵:

對象的行為,(behavior)可以為對象施加哪些操作,或可以對對象施加哪些方法。

對象的狀態,(state)當施加那些方法時,對象如何響應。

對象的標識,(identity)如何區分具有相同行為與狀態的不同對象。

 

類之間的關係:

依賴(“uses-a”)如果一個類的方法操縱另一個類的對象,我們就說一個類依賴於另一個類。

                  應該儘可能地將相互依賴的類減少至最少,即使類之間的偶合度最小。

彙總(“has-a”)類A的對象包含類B的對象。

繼承(“is-a”)類A繼承類B,類A不但包含從類B繼承的方法,還有一些額外的功能。

 

OOP與傳統的過程化程式設計技術對比:

在過程化程式設計中

首先需要確定要完成什麼任務;

然後:

1、使用逐步求精的處理過程:將要完成的任務分解成若干個任務,子任務再分解成更小的子任務,直到子任務小到可以直接實現為止(這是自頂向下的方法)。

2、編寫求解簡單任務的方法,並將它們組裝成更加複雜的過程,直到完成需要實現的功能為止(這是自底向上的方法)。

在過程化程式設計中,確定過程的手段與OOP中確定方法的方式基本一樣,即查看問題描述中的動詞或者動作。而在OOP中的最重要區別是首先從項目中分離出類,然後再找出這個類中需要定義哪些方法。另一個區別是在OOP中,每個方法都與負責執行這個操作的類相關聯。

規模小的用過程化方法比較合適;

規模大的用類和方法將會帶來兩點好處:

1、類提供了一種便於將眾多的方法聚集在一起的機制;

2、類的封裝機制將有助於對其他的類方法隱藏資料表示;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.