美文网首页
java参数传递是值传递还是引用传递?

java参数传递是值传递还是引用传递?

作者: 杜子龙 | 来源:发表于2019-04-04 20:54 被阅读0次

当一个对象被当作参数传递到一个方法后,在此方法内可以改变这个对象的属性,那么这里到底是值传递还是引用传递?
答:\color{red}{是值传递。}java的参数传递只有值传递。当一个实例对象作为参数被传递到方法中时,参数的值就是该对象引用的一个副本,指向同一个对象,对象的属性可以在方法中改变,但对象的引用(不是引用副本)是永远不变的。

java的参数传递,无论是基本数据类型还是引用类型的参数,都是值传递,没有引用传递。

    public static void main(String[] args) {
        People people = new People();
        people.setId(111);
        System.out.println(people);
        test(people);
        System.out.println(people);
    }

    private static void test(People people){
        people = new People();
        people.setId(222);
        System.out.println(people);
    }

@Data
class People{
        private Integer id;
}

运行结果:


重要参考:https://www.cnblogs.com/9513-/p/8484071.html

相关文章

  • JAVA是按值传递还是按引用传递

    java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? String和int参数传递是按值传递还是引用...

  • 聊聊Java内部类

    一.磨叽磨叽Java值传递与引用传递 “在Java里面参数传递都是按值传递”即:按值传递是传递的值的拷贝,按引用传...

  • [译] Java 值传递 VS 引用传递

    Java是值传递还是引用传递一直都有争论,我们最终下个结论,Java是值传递而不是引用传递。如果Java是引用传递...

  • Java值传递

    “在Java里面参数传递都是按值传递”这句话的意思是:按值传递是传递的值的拷贝,按引用传递其实传递的是引用的地址值...

  • Java 参数的传递

    Java 的参数是值传递,不是引用传递 Java 中只有值传递,方法按值调用(call by value)。也就是...

  • Java 参数传递是值传递还是引用传递?

    首先把结论表明,Java 的参数传递是值传递,因为有部分细节让人引起误解以为是引用传递,故我们写两个例子来举例探讨...

  • java参数传递是值传递还是引用传递

    首先用三句话来总结,后面再做解释: 1.对象就是传引用,对对象的改变直接是改变的应用指向的对象。方法内对对象的改变...

  • java参数传递是值传递还是引用传递?

    当一个对象被当作参数传递到一个方法后,在此方法内可以改变这个对象的属性,那么这里到底是值传递还是引用传递?答:ja...

  • Go语言学习笔记(三)

    指针 Go的指针不能运算 参数传递 Go的参数传递是值传递(值传递:开辟新的空间,拷贝传递参数的值,引用传递:引用...

  • C语言 函数传参的理解

    C语言有点东西 不像JAVA 不需要复杂考虑参数传递问题 java就两种参数传递方式 值传递AND引用传递...

网友评论

      本文标题:java参数传递是值传递还是引用传递?

      本文链接:https://www.haomeiwen.com/subject/bwzqiqtx.html