Java中的物件導向

2021-08-18 17:26:23 字數 1851 閱讀 7626

一、物件導向的概述:

思想的特徵:

1.更符合我們生活中的行為思想習慣。

2.將我們從執行者變成了指揮者,指揮物件做事情。

3. 簡單性體現在:讓我們把事情從複雜性-->簡單化。

物件導向的三大特徵:

封裝*繼承

多型二、區域性變數和成員變數的區別:

1. 在類中位置不同。

成員變數: 類中,方法外。

區域性變數:方法宣告上,或者在方法定義中。

2.在記憶體中的位置不一樣:

成員變數: 堆記憶體。

區域性變數: 棧記憶體。

3. 生命週期不同:

成員變數:隨著類的載入而載入,消失而消失。

區域性變數:隨著方法的呼叫而存在,呼叫完畢而消失。

4.初始化值不同:

成員變數:初始化由系統預設初始化。可以不給初始值,由系統給,然後顯示初始化。

區域性變數:定義乙個區域性變數,必須進行初始化;如果不進行初始化,則無法使用(在使用之前初始化);

三、建立物件的過程:

如:  student s = new student( );

1)通過測試類裡面main主程式進行載入,載入student類(student.class);

2) student s 先在棧記憶體開闢棧記憶體空間,建立乙個學生物件,需要在堆記憶體申請堆記憶體空間。

3) 通過無參構造方法給學生類的物件進行預設初始化。

4)通過給成員變數賦值的形式,給物件進行顯示初始化。

5)顯示初始化完畢,整個物件建立完畢之後,給物件進行記憶體空間位址值的分配。

6)通過位址值找對應的物件。

構造方法:

快捷鍵:alt+shift+s+c。

快捷鍵:alt+shift+s+o。

構造方法的注意事項:

1)之前沒有寫無參構造,系統會預設提供無參構造。

2)如果我們無參構造或者有參構造,系統不會再提供無參構造;定義乙個類的時候,永遠給出無參構造。

*構造方法是可以過載的!!!*

四、 封裝:

private的用法:

1)被private修飾的只能在本類中訪問。

2)可以通過公共的訪問public去間接訪問。

當前成員變數和區域性變數名稱一致的情況,遵循就近原則。

this:代表是當前類的物件(當前物件的引用)。解決區域性變數隱藏的成員變數

alt+shift+s+r。  *提供set***/get***()方法。

五、static關鍵字:

1.靜態隨著類的載入而載入;

2.static優先於物件存在;

3.static共享資料,可以被多個物件進行共享;

4.如果資料被靜態修飾的,它可以被類名直接呼叫。

被靜態修飾的方法:  類名.方法名();

被靜態修飾的變數: 類名.變數名;

用法:乙個類中可有靜態變數,也可以有非靜態。

可以有靜態成員方法,也可以有非靜態成員方法。

非靜態的方法,既可以訪問靜態變數也可以訪問非靜態的變數。

(靜態只能訪問靜態)!!

java 中物件導向

通過關鍵字class 類名 來定義類,類名首字母一般大寫 修飾符 資料型別 屬性名 一般修飾符有public private protected一般為private私有的通過get,set方法來訪問 修飾符 返回值 方法名 方法一般為定義為publice 構造方法 用於類的初始化引數,建立物件的時候...

Java中物件導向的思想

物件導向思想的特點 1 物件導向的思想更符合我們生活中的思想行為習慣 2 讓乙個複雜的事情簡單化 3 讓我們從執行者變成了指揮者 成員變數和區域性變數的區別 1 書寫的位置不同 區域性變數 在方法中或者是方法宣告上 成員變數 在類中,方法外 2 在記憶體中的位置不同 區域性變數 在棧記憶體中 成員變...

JAVA 物件導向

this關鍵字只能在方法內部使用,表示 呼叫方法的那個物件 的引用。this 用於建構函式之間進行相互呼叫。語句只能定義在建構函式的第一行。static 靜態 使用注意事項 1.靜態方法只能訪問靜態成員。非靜態方法可以訪問靜態成員。2.靜態方法中不可以定義this,super關鍵字。因為靜態優先於物...