shen211 发表于 2013-1-27 05:32:07

java中值传递和引用传递

 
public class ValueTest {public static void change(int a) {a = 0;a++;System.out.println(a);}public static void changeObject(A a) {if(null != a)System.out.println("is not null");a = null;}/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stubString a = "123";int c = 12;change(c);System.out.println(c);A b = new A();changeObject(b);if(null == b)System.out.println("change");}}class A {String a = null;A() {a = "123";}public String toString() {System.out.println(a);return a;}} 上面的例子里说明所谓的值传递和对象传递的一个例子。可是,值传递和引用传递的真正区别在哪里呢?我依然很迷惑。个人认为其中最大的差别是java中的基本类型和对象的=号运算的差别。具体是什么差别,个人认为java中基本类型通过native方法进行处理,进行地址存储,而对象则是引用,如java编程思想中描述的很玄的气泡例子。
如果有哪位更好的理解,请留言告诉我,谢谢啦!!
页: [1]
查看完整版本: java中值传递和引用传递