1. 程式人生 > 其它 >假期java自學-----物件4

假期java自學-----物件4

如何理解JAVA中的面向物件
三.建立物件的過程如何在記憶體中執行

1.JVMjava虛擬機器編譯程式碼.class(位元組碼檔案)Java虛擬機器棧堆方法區執行方法進棧堆是用來建立物件的方法區是用來編譯類的方法執行結束後彈棧

2.面向物件

2.1成員變數和區域性變數的區別:

a.在類中的位置不同成員變數:在類中,方法外區域性變數:在方法定義中或者宣告上

b.在記憶體中的位置不同成員變數:在堆記憶體中(成員變數屬於物件,物件進堆記憶體)區域性變數:在棧記憶體中(區域性變數屬於方法,方法進棧記憶體)

c.生命週期不同成員變數:隨著物件的建立而存在,隨著物件的消失而消失區域性變數:隨著方法的呼叫而存在,隨著方法的呼叫完畢而消失

d.初始化值不同成員變數:有預設初始值區域性變數:沒有預設初始值,必須定義,賦值,然後才能使用注意事項:區域性變數和成員變數重名的問題,如果重名,就近原則基本資料型別:byteshortintlongdoublecharboolean引用資料型別:陣列StringArraysScanner類

3.面向物件(方法的形式引數是類沒那個的時候如何呼叫)方法的形式引數是一個類型別(引用資料型別),其實需要的就是該類的物件

4.面向物件(匿名物件)沒有名的物件就是匿名物件好處:可以節省程式碼(某些時候)弊端:賦值沒有意義,匿名物件呼叫完畢就是垃圾。