/* *方法的参数传递 1.形参:方法声明时,方法小括号里内的参数 实参:调用方法时,实际传入的参数的值 2.规则:java中的参数传递机制:值传递机制 1)形参是基本数据类型的:将实参的值传递给形参,实质是栈内存中新开辟了一块内存,存放实参的副本,副本的值和实参相同,对副本进行操作不影响实参。形参在方法结束后就被JVM回收了,栈内存中就不存在了 2)形参是引用数据类型的:将实参的引用类型的值(对应的堆空间的对象实体的首地址)传递给形参的引用类型变量,只是地址传给 */ class TestJava { public static void main(String[] args) { TestJava tt=new TestJava ();//静态方法不能调用非静态的变量和方法,所以通过实例化对象来调用swap DataSwap ds=new DataSwap(); System.out.println("ds.i:"+ds.i+" "+"ds.j:"+ds.j); tt.swap(ds); System.out.println("ds.i:"+ds.i+" "+"ds.j:"+ds.j); System.out.println("实参ds的值为:"+ds); } public void swap(DataSwap d) { int temp=d.i; d.i=d.j; d.j=temp; System.out.println("形参d的值为:"+d);//和实参ds的值相同 } } class DataSwap { int i=10; int j=5; }
原文:http://www.cnblogs.com/a842297171/p/5136395.html