文章詳情頁
談?wù)凧AVA中的調(diào)用方式
瀏覽:132日期:2024-06-11 10:07:08
內(nèi)容: 很多書籍都說Java支持傳引用調(diào)用的方式,類似于C++中的Person &a引用調(diào)用,而近來編程遇到一系列問題讓我對(duì)此產(chǎn)生了懷疑,于是將這些方法一一列出,我們來一起看看JAVA中的調(diào)用方式: 看下面的程序: class Person { private String name;//姓名 private String sex;//性別 public Person(String x, String y) { this.name = x; this.sex = y; } public void setStatus(String x, String y) { this.name = x; this.sex = y; } public String toString() { return name + sex; } // -----交換普通對(duì)象----- public static void changeref(Person tmpx, Person tmpy) { //交換tmpx和tmpy對(duì)象 Person swapref = tmpx; tmpx = tmpy; tmpy = swapref;// System.out.println('在方法中交換的結(jié)果: refa =' + tmpx.toString());// System.out.println('在方法中交換的結(jié)果: refb =' + tmpy.toString()); } // ----- 交換數(shù)組對(duì)象----- public static void changeArrayRef(Person[] x, Person[] y) { //交換數(shù)組對(duì)象 Person swaparrayref = x[x.length-1]; x[x.length-1] =y[x.length-1]; y[x.length-1] = swaparrayref; } //-----交換數(shù)組----- public static void changeArray(int[] x,int[] y) { int[] tmp =x; x = y; y = tmp; } }public class Demo { public static void main(String[] args) { //-------建立并構(gòu)造兩個(gè)對(duì)象--------- Person refa = new Person('張三', '男'); Person refb = new Person('李四', '男'); //交換refa對(duì)象和refb對(duì)象 Person.changeref(refa, refb); //從交換結(jié)果中看出,實(shí)際對(duì)象并未交換 System.out.println('在主函數(shù)中交換的結(jié)果 refa = ' + refa.toString()); System.out.println('在主函數(shù)中交換的結(jié)果 refb = ' + refb.toString()); //-------建立兩個(gè)對(duì)象數(shù)組---------- Person[] arraya = new Person[1]; Person[] arrayb = new Person[1]; //分別構(gòu)造數(shù)組對(duì)象 arraya[0] = new Person('王五','男'); arrayb[0] = new Person('趙六','男'); /*數(shù)組對(duì)象為null時(shí),不能設(shè)置其值,必須先構(gòu)造它(即調(diào)用構(gòu)造函數(shù)),再用其它方法設(shè)置其值 */ System.out.println('n'+'數(shù)組對(duì)象交換前的結(jié)果 arraya = ' + arraya[0].toString()); System.out.println('數(shù)組對(duì)象交換前的結(jié)果 arrayb = ' + arrayb[0].toString()); //交換這兩個(gè)數(shù)組對(duì)象 Person.changeArrayRef(arraya, arrayb); System.out.println('-交換后的結(jié)果 arraya = ' + arraya[0].toString()); System.out.println('-交換后的結(jié)果 arrayb = ' + arrayb[0].toString()); //-------建立兩個(gè)普通數(shù)組--------- int[] a = new int[2]; int[] b = new int[2]; //給數(shù)組個(gè)元素賦值 for(int i =0;i
標(biāo)簽:
Java
相關(guān)文章:
1. vue 在methods中調(diào)用mounted的實(shí)現(xiàn)操作2. Spring依賴注入的三種方式實(shí)例詳解3. 利用python控制Autocad:pyautocad方式4. SpringBoot+slf4j實(shí)現(xiàn)全鏈路調(diào)用日志跟蹤的方法(一)5. docker容器調(diào)用yum報(bào)錯(cuò)的解決辦法6. 在js文件中引入(調(diào)用)另一個(gè)js文件的三種方法7. Python tkinter布局與按鈕間距設(shè)置方式8. django API 中接口的互相調(diào)用實(shí)例9. django filter過濾器實(shí)現(xiàn)顯示某個(gè)類型指定字段不同值方式10. spring cloud hystrix 超時(shí)時(shí)間使用方式詳解
排行榜
