java學習:虛擬機器對於方法中引數為類型別的如何處理的
java學習:虛擬機器對於方法中引數為類型別的如何處理的
根據你的問題描述,我感覺你並不是要問java虛擬機器中類載入過程,而是想知道虛擬機器對於方法中引數為類型別的如何處理的。
首先,對於你理解的方法引數型別為double,然後傳入的是byte,但是在方法中以double型別處理了,你描述的理解基本是正確的。但是基本資料型別一般在棧裡,不是堆裡。
其次,如果是類型別的話,其實在方法中引數傳遞叫引用傳遞,而你上面說的基本資料型別是值傳遞,所以這是不同的處理方式。
簡單來說:基本資料型別傳遞的是值,所以在方法中操作了跟原來傳入的資料無關。
例如:
public static void
change(
double
n){
n =
5
;
}
public static void
main(String[] args) {
byte
m =
3
;
change
(m);
System.
out
.println(m);
// 此處m並不會變成5,因為是值傳遞
}
而類型別一般是引用傳遞,在傳遞的時候只是將物件的指標傳遞過來了,實際上還是操作的原來的物件,所以也不會重新分配空間。
class
Student{
String
name
;
int
id
;
}
public static void
change(Student student){
student.
name
=
"HanMeimei"
;
}
public static void
main(String[] args) {
Student student =
new
Student();
student.
id
=
1
;
student.
name
=
"LiLei"
;
change
(student);
// 此處name是HanMeimei,因為此處為引用傳遞,只是將student物件的地址傳遞到了change方法中,
// 所以在change方法中改變了name的值,此處也會改變
System.
out
.println(student.
name
);
}
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947096/viewspace-2659534/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 《深入理解java虛擬機器》學習筆記7——Java虛擬機器類生命週期Java虛擬機筆記
- 深入學習Java虛擬機器——類檔案結構Java虛擬機
- 五分鐘學Java:如何學習Java面試必考的JVM虛擬機器Java面試JVM虛擬機
- Java虛擬機器3:常用JVM命令引數Java虛擬機JVM
- Java虛擬機器 —— 類的載入機制Java虛擬機
- JVM學習-虛擬機器類載入機制JVM虛擬機
- Java虛擬機器(JVM)引數配置說明薦Java虛擬機JVM
- Gradle傳給虛擬機器的引數Gradle虛擬機
- 深入學習Java虛擬機器——虛擬機器位元組碼執行引擎Java虛擬機
- 方法中引數的型別詳細型別
- 《深入理解java虛擬機器》學習筆記4——Java虛擬機器垃圾收集器Java虛擬機筆記
- Linux雲端計算技術學習:常用虛擬機器引數Linux虛擬機
- Java虛擬機器類載入的過程Java虛擬機
- 學習《Java虛擬機器》目錄索引(持續更新中)Java虛擬機索引
- java虛擬機器類載入機制Java虛擬機
- Java 虛擬機器類載入機制Java虛擬機
- Java虛擬機器10:類載入器Java虛擬機
- 詳解Java 虛擬機器(第④篇)——8 種基本型別的包裝類和常量池Java虛擬機型別
- 《深入理解java虛擬機器》學習筆記6——類載入機制Java虛擬機筆記
- 針對虛擬機器搭建centos7不能上網問題處理方法虛擬機CentOS
- Java虛擬機器9:Java類載入機制Java虛擬機
- 一文看懂虛擬機器中Java物件的生死判別虛擬機Java物件
- Dalvik虛擬機器、Java虛擬機器與ART虛擬機器虛擬機Java
- 學習筆記-虛擬機器筆記虛擬機
- Java虛擬機器(六):類載入機制Java虛擬機
- Java虛擬機器8:虛擬機器效能監控與故障處理工具Java虛擬機
- Java學習關於隨機數工具類--Random類Java隨機random
- JavaScript 中的引數處理JavaScript
- Java 虛擬機器之三:Java虛擬機器的記憶體結構Java虛擬機記憶體
- Java虛擬機器——類檔案結構Java虛擬機
- Java 虛擬機器之四:Java類載入機制Java虛擬機
- Java虛擬機器類裝載的原理及實現Java虛擬機
- 如何修復Windows 10中的Java虛擬機器致命錯誤WindowsJava虛擬機
- java中的列舉型別學習Java型別
- java虛擬機器和Dalvik虛擬機器Java虛擬機
- Android 虛擬機器 Vs Java 虛擬機器Android虛擬機Java
- Java虛擬機器的原理是怎樣的?學習一下吧Java虛擬機
- 《深入理解java虛擬機器》學習筆記5——Java Class類檔案結構Java虛擬機筆記