溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

淺談JAVA內存分配與參數(shù)傳遞

發(fā)布時間:2020-09-07 12:15:00 來源:腳本之家 閱讀:154 作者:Hola World 欄目:編程語言

JAVA中方法的參數(shù)傳遞方式只有一種:值傳遞。

JAVA內存分配:

1.棧:存放 基本類型的數(shù)據(jù)、對象的引用(類似于C語言中的指針)

2.堆:存放用new產生的數(shù)據(jù)

3.靜態(tài)域:存放在對象中用static定義的靜態(tài)成員

4.常量池:存放常量

5.寄存器

6.非RAM存儲

class BirthDate{
 private int day;
 private int month;
 private int year;
 public BirthDate(int d,int m,int y){
 day=d;
 month=m;
 year=y;
 }
}

public class Test{
 public static void main(String[] args){
 int date=9;
 Test test=new Test();
 test.change(date);
 BirthDate d1=new BirthDate(7,7,1970);
 }
 
 public void change(int i){
 i=1234;
 }
}

淺談JAVA內存分配與參數(shù)傳遞

public class TestTransfer{
 public static void main(String[] args){
 int a=6;
 int b=9;
 swap(a,b);
 System.out.println("交換結束后,a的值是"+a+";b的值是"+b); //a=9,b=6
 }
 
 public static void swap(int a,int b){
 int tmp=a;
 a=b;
 b=tmp;
 System.out.println("swap方法里,a的值是"+a+";b的值是"+b); //a=6,b=9
 }
}

淺談JAVA內存分配與參數(shù)傳遞

淺談JAVA內存分配與參數(shù)傳遞

public class TestTransfer{
 public static void main(String[] args){
 DataSwap ds=new DataSwap();
 ds.a=6;
 ds.b=9;
 swap(ds);
 System.out.println("交換結束后,ds.a的值是"+ds.a+";ds.b的值是"+ds.b); //a=9,b=6
 }
 
 public static void swap(DataSwap ds){
 int tmp=ds.a;
 ds.a=ds.b;
 ds.b=tmp;
 System.out.println("swap方法里,ds.a的值是"+ds.a+";ds.b的值是"+ds.b); //a=9,b=6
 }
}
 
class DataSwap{
 public int a;
 public int b;
}

淺談JAVA內存分配與參數(shù)傳遞

淺談JAVA內存分配與參數(shù)傳遞

淺談JAVA內存分配與參數(shù)傳遞

淺談JAVA內存分配與參數(shù)傳遞淺談JAVA內存分配與參數(shù)傳遞

淺談JAVA內存分配與參數(shù)傳遞

以上所述是小編給大家介紹的JAVA內存分配與參數(shù)傳遞詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI