1. 程式人生 > >面向物件的概念

面向物件的概念

面向物件 面向過程和麵向物件的區別 面向過程就是分析出解決問題所需要的步驟,然後用函式把這些步驟一步一步實現,使用的時候一個一個依次呼叫就可以了。 面向物件是把構成問題事務分解成各個物件,建立物件的目的不是為了完成一個步驟,而是為了描敘某個事物在整個解決問題的步驟中的行為 成員變數和區域性變數 1)成員變數可以使java語言中任何一種資料型別(包含基本資料型別和引用型別 2) 在定義成員變數時可以對其初始化,不初始化也有預設值 3)成員變數的作用範圍為整個類體(預設值如下) 物件的建立和使用 1.必須使用new 關鍵字建立物件 2.使用物件(引用).成員變數或來引用物件的成員變數 3.使用物件(引用).方法(引數列表)來呼叫物件的方法 4.同一類的每個物件有不同的成員變數儲存空間 5.同一類的每個物件共享該類的方法 構造方法
1.構造方法與類同名沒有返回值 2.使用new +構造方法 建立一個新的物件 命名規則 1.類名的首字母大寫 2.變數名和方法名的首字母小寫 3.運用駝峰標識 方法的過載 1.方法的過載是指一個類名可以定義有相同的名字,但引數不同的多個方法。呼叫時,會根據 不同的引數表選擇對應的方法 this關鍵字 1.在類的方法定義中使用this關鍵字代表使用該方法的物件的引用 2.在必須指出當前使用方法的物件是誰時要用this 3.有時使用this可以處理方法中成員變數和引數重名的情況 4.this可以看作是一個變數,它的值是當前物件的引用 static關鍵字 1.在類中,用static宣告的成員變數為靜態成員變數,它為該類的公用變數,在第一次使用時被初始化,對於該類的物件來說,static關鍵字只有一份 2.用static宣告的方法為靜態方法,在呼叫該方法時,不會將物件的引用傳遞給它所以在static方法中不可訪問非static的成員 3.可以通過物件引用或類名(不需要例項化)訪問靜態成員 package和import
為便於管理大型軟體系統中數目眾多的類,解決類的命名衝突問題Java引入包機制,提供類的多重類名稱空間 類的繼承 1.java中使用extends關鍵字實現類的繼承機制,其語法規則為 class name extends superClass{ } 2.通過繼承,子類自動擁有了基類superclass的所有成員(成員變數和方法) 3.java只支援單繼承,不允許多繼承: 一個子類只能有一個基類,一個基類可以派生出多個子類 訪問修飾符 java中包含四種訪問修飾符:private,default,protected,public 方法的重寫 1.在子類中可以根據需要對從基類中繼承來的方法進行重寫 2.重寫方法必須和被重寫方法具有相同方法名稱,引數列表和返回型別 3.重寫方法補鞥使用比被重寫方法更嚴格的訪問許可權 super關鍵字
在java中使用super關鍵字來引用基類的成分 繼承中的構造方法 1.子類的構造的過程中必須呼叫其基類的構造方法 2.子類可以在自己的構造方法中使用super呼叫基類的構造方法(但是必須放在第一行) 3.如果子類的構造方法中沒有顯示地呼叫基類構造方法,則系統預設呼叫基類無引數構造方法 4.如果子類構造方法中既沒有顯式呼叫基類構造方法,而基類中又沒有無參構造方法,則編譯出錯。 Object類 object類是所有java類的根基類 如果在類的宣告中未使用extends關鍵字指明其基類,則預設基類為object類 tostring方法 object類中定義有public string tostring()方法,其返回值是string型別描述當前物件的有關資訊 equals方法 object類中定義有 1.public boolean equals(Object obj )方法 2.object的equals方法定義為x.equals(y) 當x和y是同一個物件的應用時返回true否則返回false 3.j2sdk提供的一些類,如string,date 等,重寫了object的equals方法,呼叫這些類的equals方法