您好,登錄后才能下訂單哦!
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; } }
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 } }
前
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ù)傳遞詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。