Java 物件導向程式設計的基礎知識

來源:互聯網
上載者:User

絕大多數的Java程式員不必關心對象的具體實現,只要保證對象滿足他們的需求就可以了。
關於OOP
OOP 詞彙表

    1.encapsulation;封裝, 有時也稱為資料隱藏
    2.instance field :對象中的資料被稱為實力域
    3.method: 操縱資料的過程被稱為方法
    4.state:  狀態
   

OOP 的另外一原則會讓使用者自訂Java類變得輕而易舉, 這就是:類可以通過擴充另一個類來建立。 事實上, 在Java中, 所有的類都源於一個“神通廣 大的超類”,他就是object、

對象:要想使用OOP,一定要清楚對象的三個主要特性
    1.對象的行為(behavior)-----可以對對象施加哪些操作,或可以對對象施加哪些方法
    2.對象的狀態(state)-----當施加那些方法時, 對象如何相應
    3.對象標識(identity)----如何區分具有相同行為與狀態的不同對象

如果沒有經過方法調用而改變對象狀態, 就說明封裝性一定遭到了破壞。**************

類之間的關係

最常見的關係有: 依賴-------彙總-------繼承
如果一個類的方法操縱另一個類的對象, 我們就說一個類依賴於另一個類
應該儘可能的將相互依賴 的類減至最少。用軟體工程的術語來說:就是使類之間的耦合度最小

對象與物件變數
    要想使用對象, 就必須首先構造對象, 並制定其初始狀態。 然後, 對對象施加方法。
   

物件變數:
    可以顯式的將物件變數設定為空白(null), 表明這個物件變數目前沒有引用任何對象
   
    一定要認識到:一個對象並沒有實際包含一個對象, 而僅僅引用一個對象

    在Java中, 任何物件變數的值都是對儲存在另外一處的一個對象的引用。new操作符的傳回值也是一個引用。
   
    變數不會自動的初始化為NULL, 而必須對它們進行初始化, 調用new或將它們設定為null

對屬性做出修改的方法 被稱為更改器方法, 僅訪問屬性而不加修改的方法被稱為訪問器方法。

靜態方法
    靜態方法是不能想對象實施操作的方法。例如:Math類的Pow方法就是一個靜態方法。 運算式:Math.pow(x,a);  計算冪

。  它在運算的時候,不使用任何Math對象。換句話說, 沒有隱式的參數。
   
    可以認為靜態方法是沒有this參數的方法(在一個非靜態方法中, this參數表示該方法的隱式參數。)

    因為靜態方法不能操作對象, 所以不能在靜態方法中訪問執行個體域。但是,靜態方法可以訪問自身類中的靜態域。

在什麼時候使用靜態方法:
    1.當一個方法不需要訪問對象狀態,,其所需參數都是通過顯式參數提供的。
    2.當一個方法只需要訪問類的靜態域。

參 數傳遞
   
    ////*********一個方法可以修改傳遞引用所對應的變數值, 而不能修改傳遞值調用所對應的變數值***********/////////////////

在Java語言中, 方法參數的使用方式:
    1.一個方法不能修改一個基礎資料型別 (Elementary Data Type)的參數(即數值型和布爾型值)
   
    2.一個方法可以改變一個對象參數的狀態

    3.一個方法不能讓對象參數引用一個新的對象。

類設計技巧:
   
    1. 一定將資料設計為私人

    2.一定要對資料初始化

    3.不要在類中使用過多的基礎資料型別 (Elementary Data Type)

    4.不是所有的屬性都需要獨立的屬性訪問器或屬性更改器
   
    5.使用標準格式進行類的定義

    6.將職責過多的類進行分解

    7.類名和方法名要能夠體現他們的職責

相關文章

聯繫我們

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