码迷,mamicode.com
首页 > 编程语言 > 详细

Java中传值和传引用

时间:2020-06-12 12:36:24      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:int   形参   demo   类型   style   main   数据   数据类型   system   

public class Demo01 {
     int a = 0;
    public static void main(String[] args) {
        Demo01 demo01 = new Demo01();

        demo01.test(demo01.a);
        System.out.println(demo01.a);//0

        demo01.test01(demo01);
        System.out.println(demo01.a);//1

    }
    public  void test(int a){//传递的是值
        a = a=1;
    }
    public void test01(Demo01 s){//传递的是引用
        s.a = s.a + 1;

    }
}

在Java中只有传值这一个概念(实参将值传递给形参),但是test方法中传递的是形参的值,而不是形参的地址值,test01方法传递的是引用值(就是地址值)
我们可以看作方法中的形参复制了传递过来的实参的值。然后对这个值进行操作,如果传递过来的是基本数据类型,那么仅仅改变了传递过来的值,而没有改变实际值,如果传递过来的是地址值,那么对地址的改变就会直接哟影想实参的值



 

Java中传值和传引用

标签:int   形参   demo   类型   style   main   数据   数据类型   system   

原文地址:https://www.cnblogs.com/guosai1500581464/p/13098672.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!