標籤:函數 實現 har 預設 構造 面向 傳回值 格式 事物
java也屬於物件導向編程 (物件導向的核心 : 找到合適的對象做合適事情。)
物件導向的三大特徵 : 封裝,繼承,多態。
類,對象。對象 :真實存在的唯一的事物。物件導向編程(oop)思想力圖
使對電腦語言中的事物的描述和自然中的事物 儘可能保持一致。
java中如何來找合適的對象:
1.sun已經指定好的類,通過定製好的類建立對象, 需要認識這些類。
2.自訂類 ,通過自訂類來建立對象。
類中包含 :
屬性 ,方法。
類的定義格式 :
class 類名 { 屬性(成員變數) : 描述事物的公用的特點。
方法 : 描述事物的行為 (做什麼事情) }
通過自訂的類來建立一個對象
格式:
類名 對象名(變數名) = new 類名();
//訪問屬性 :
對象.屬性名稱
//設定屬性:
對象.屬性名稱 = 資料。
//調用對象的方法:
對象.方法名();
屬性 格式 : 資料類型 變數名
成員變數和局部變數額區別:
定義的位置 :
1.定義在類中,方法外。 2.局部變數是定義在方法中。
作用上:
1.成員變數是用來描述同一類事物(對象)的公用屬性。
2.局部變數就是提供一個變數給方法使用
生命週期 :
1.成員變數隨著對象的建立而建立,隨著對象的消失而消失。(成員變數作用在整個範圍中,如果需要在當前淚中使用成員變數,直接哪拿到變數名就可以使用)
2.局部變數隨著方法調用而建立,出了方法的範圍就消失
初始值來區分:
1.成員變數,如果你沒有賦值,它是有預設值的。
int 預設是0
float 預設是0.0f
double 預設是 0.0
boolean 預設 false
char 預設 ‘ ‘
String (參考型別)null;
2.局部變數:
局部變數是沒有初始值的,必須初始化才能使用。
成員變數在當前類中是可以直接通過變數名來使用,如果變數名需要在其他類中使用,就需要建立對象
類和對象的關係:
類是對同一事物的抽象,對象實際存在的該類的各種實體,面向對編程的核心:找合適的對象來做
合適的事;
java中如何找到對象
1sun自己定義好的類,必須知道這個類2自訂類,通過自訂類來建立對象
類的格式:
class 類名{
屬性(成員變數)描述對象的公用特性
買哦書對象的公用行為
}
如何通過類建立對象 類名對象名 = new 類名();
class Baby { //屬性 : 變數類型 變數名 = 值; String name; int age; String sex;
//方法
// 修飾符 傳回值類型 方法名(參數列表){}
public void cry(){ System.out.println(name+"哭了"); }
3匿名對象
我們一般不會用匿名對象給屬性賦值,無法擷取屬性值,匿名對象永遠都不可能是一個對象
好處:書寫簡單
使用情境:如果一個對象需要調研一個方法中一次的時候,就可以使用匿名對象
可以作為實際參數在方法中調用
4構造方法
在java中類似於oc的初始化方法叫構造方法
OC中初始化構造方法特點:
可以在對象建立初始化屬性值
初始化方法只能調用一次
構造方法的租用:給對象初始化,對象建立初始化屬性值
如何來建立構造方法:格式 修飾符 類名 (參數列表){}
構造方法注意特點:方法名與類名保持一致;構造方法沒有傳回值;構造方法不是我們手動調用的,而是對象被建立的時候java虛擬機器調用的;如果一個類我們沒有給他定義構造方法,java虛擬機器在編譯的時候會給這個類默構造方法,添加一個無參構造方法;如果你自己定義構造方法,java虛擬機器就不會在建立無參構造方法,這個時候就自己定義一個無參構造方法
5方法重載
在java中方法是可以重名的,我們把這種方法重名叫做方法的重載
:1必須是方法名一樣,才可以叫方法重載;任何方法都可以實現方法重載;保證參數列表的參數順序或者個數不一樣
構造方法中額可以在調用普通方法,在通過個一個類中方法的調用直接拿到方法名調用就餓可以了
構造代碼塊左用:給對象統一初始化 ;必須是寫在成員變數的位置上;對象被建立出來時候就執行了,
代碼塊:構造代碼塊;局部代碼塊,寫在方法中,也是以大括弧來表示;靜態代碼塊
構造代碼塊注意點:java中編譯一個java源檔案的時候,會把成員變數的聲明放在類的最前面;成員變數的初始化都是在構造方法中執行;一旦經過java編譯器後,那麼代碼塊中的代碼會被移動到建構函式中去;成員變數的顯示初始化和構造代碼塊,按照當前的代碼順序來執行,誰在後面就顯示誰
java物件導向