一、物件導向的概述:
思想的特徵:
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關鍵字。因為靜態優先於物...