马士兵 java内存_学习笔记-马士兵java-JAVA的面向对象与内存解析
1. 類的定義:成員變量、方法
① 聲明成員變量格式:[] type [=defaultValue]; (例:private int id;)
② 聲明方法格式:[]([argu_list]){
[]
} (例:public int getAge() {return age;})
2. 成員變量的默認值:
成員變量類型 取值
byte??? --------------------??? 0
short???--------------------??? 0
int?????? --------------------??? 0
long??? --------------------??? 0L
char??? --------------------??? '\u0000'
float??? --------------------??? 0.0F
double? -------------------??? 0.0D
boolean? ------------------??? false
所有引用類型? -----------??? null
3. 成員變量與JAVA變量區別:java變量聲明后必須賦值(無默認值)才可使用,成員變量(有默認值)聲明后可直接使用。
4. 成員變量的作用范圍為整個類體。
5. 引用類型:JAVA語言中,除了基本類型(4類8種)之外的變量類型。(一小塊內存指向一大塊內存)
① 基礎類型只占用一塊內存(棧中)
② 引用類型占兩塊內存【引用占一塊內存(棧中)-->相當于指針,new出另一塊內存(堆中)-->對象】
6. 在內存中,區分類和對象:
① 類是靜態的概念,在代碼區域中。
② 對象是new出來的,位于堆內存中。
③ 類的每個成員變量在不同的對象中都有不同的值(除了靜態變量)而芳芳只有一份,執行的時候才占用內存。
補充:堆內存(比較大)為動態分配內存。
7. 對象的創建和使用:
① 必須使用new關鍵字創建對象。
② 使用“對象(引用).成員變量”來引用對象的成員變量。
③ 使用“對象(引用).方法(參數列表)”來調用對象的方法。
④ 同一類的每個對象有不同的成員變量存儲空間。
⑤ 同一類的每個對象共享該類的方法。
8. JAVA的方法(類似其他語言的函數)聲明格式:
[修飾符1 修飾符2 …] 返回值類型 方法名(形式參數列表){JAVA語句;……}
a. 形式參數:在方法被調用時用于接收外界輸入的數據。
b. 實參:調用方法時實際傳給方法的數據。
c. 返回值:方法在執行完畢后返還給調用它的環境的數據。
d. 返回值類型:事先約定的返回值的數據類型,如無返回值,必須給出返回值類型void。
補充說明:
a. java中使用“對象名.方法名(實參列表)”調用方法。
b. 實參的數目、數據類型、次序,必須和所調用方法聲明的形參列表匹配。
c. retrun語句種植方法的運行并制定要返回的數據。
d. java中進行函數調用中傳遞參數時,遵循值傳遞的原則:基本類型傳遞的是該數據值本身,引用類型傳遞的是對象的引用(非對象本身)。
9. 構造方法(構造函數)
① 使用new+構造方法創建一個新的對象。
② 構造函數式定義在JAVA類中的一個用來初始化對象的函數。
③ 構造函數與類名相同且沒有返回值。
④ 當沒有指定構造函數時,編譯器為類自動添加形式如:“類名(){ }”的空構造方法(一旦手工添加構造函數,系統將不再為你添加構造方法)。
10. 形參和局部變量-->在內存中同等待遇。
總結
以上是生活随笔為你收集整理的马士兵 java内存_学习笔记-马士兵java-JAVA的面向对象与内存解析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php网站mercury安装,mercu
- 下一篇: 计算机平面设计必学英语,平面设计师常用的