`

JAVA方法传递参数:传值?传引用?

    博客分类:
  • java
 
阅读更多

https://www.cnblogs.com/alexlo/p/3493755.html

------------------------

java中传参 都是副本,和JS传参一样。

 

 

 

https://blog.csdn.net/wuseyukui/article/details/44238589?utm_source=blogxgwz5 写道
Java参数,不管是原始类型还是引用类型,传递的都是副本(有另外一种说法是传值,但是说传副本更好理解吧,传值通常是相对传址而言)。
如果参数类型是原始类型,那么传过来的就是这个参数的一个副本,也就是这个原始参数的值,这个跟之前所谈的传值是一样的。如果在函数中改变了副本的 值不会改变原始的值.
如果参数类型是引用类型,那么传过来的就是这个引用参数的副本(地址值,本质上是按值传递),这个副本存放的是参数的地址。如果在函数中没有改变这个副本的地址,而是改变了地址中的 值,如设置对象属性的值,那么在函数内的改变会影响到传入的参数。如果在函数中改变了副本的地址,如new一个,那么副本就指向了一个新的地址,此时传入的参数还是指向原来的 地址,所以不会 改变参数 的值。

 ----------------------引用类型作为map的值

变量=地址,将这个变量地址给map,再把这个变量赋值新的地址,不影响map里的,因为变量是新地址了。但若给map后,该变量地址做些操作则会影响map,因为还是这个地址。

分享到:
评论

相关推荐

    Java是传值还是传址引用

    Java是传值还是传址引用

    java中传值还是传引用的的认识

    java中传值还是传引用的的认识? 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?

    java的传值与传引用详解

     Java 是传值还是传引用,问题主要出在对象的传递上,因为 Java 中简单类型没有引用。既然争论中提到了引用这个东西,为了搞清楚这个问题,我们必须要知道引用是什么。  简单的说,引用其实就像是一个对象的名字...

    23.Java对象作为参数传递是传值还是传引用1

    前言在Java中,当对象作为参数传递时,究竟传递的是对象的值,还是对象的引用,这是一个饱受争议的话题。若传的是值,那么函数接收的只是实参本,函数对形参的操作并不

    Java语言的方法参数浅析

    通过对典型程序的研究与分析可以看出JAVA语言的参数传递总是传值调用的,但是对于基本类型的参数和对象类型的参数来说,参数传递的情况不完全相同.Java语言不能直接使用传引用调用,但是可以通过数组的方式模拟传引用...

    java 参数传递

    传值还是传引用 详细讲解JAVA参数传递机制 一目了然

    java中参数传递的演示

    java中参数传递的演示,分析传值与传引用的区别

    java及C++中传值传递、引用传递和指针方式的理解

    为什么 Java 只有值传递,但 C++ 既有值传递,又有引用传递呢?今天我们就来探讨下这个问题,有需要的朋友可以参考下

    java参数传递

    该资源十分有效的解决了部分同学对于参数引用方面的疑惑,使得同学们在java编程上取得了优秀的成绩。

    Java重点知识总结

    方法参数传递(传值、传递引用的区别) , 方法重载(同名、参数形式不同) 字符串(常量、与字符常量的区别、连接运算、例2.18) 。。。。。。。 。。。。 第9章 流的概念 字节流的类的作用、类层次 字符流的类的...

    Java开发技术大全(500个源代码).

    constructWithPara.java 带参数的构造方法 declareDefault.java 缺省访问权限的使用 declarePrivate.java 私有访问权限的使用 declareProtected.java 保护访问权限的使用 deriveClass.java 子类访问父类变量...

    javascript的变量、传值、传址、参数之间关系

    先把收获晾一下: ...基本类型的传递如同基本类型变量的复制一样,而引用类型的则如同引用类型变量的复制一样。“  ”当一个变量复制引用类型的值时,同样也会将存储在变量对象中的值复制一份放到为新变量分配的

    c#学习笔记——学习心得

    向方法传递结构时,是通过传值方式传递的,结构实例化可以不用new,结构可以声明构造函数,但必须带参数,且声明的构造函数是用来对成员初始化的,必须包含每个字段。结构不能从另一个结构或类继承而来,但可以实现...

    C++编程思想 (作者学习C++亲身体会及多年教学经验)

    本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简...10.3.1 传值方式传递和返回 179 10.3.2 拷贝构造函数 182 10.3.3 缺省拷贝构造函数 187 10.3.4 拷贝构造函数方法的选择 188 10.4 指向成员的指针

    C++编程思想1-5 清晰PDF

    本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简...10.3.1 传值方式传递和返回 179 10.3.2 拷贝构造函数 182 10.3.3 缺省拷贝构造函数 187 10.3.4 拷贝构造函数方法的选择 188 10.4 指向成员的指针

    C++编程思想(中文版)

    本书作者根据自己学习C++的亲身体会及多年教学经验,用简单的例子和简...10.3.1 传值方式传递和返回 179 10.3.2 拷贝构造函数 182 10.3.3 缺省拷贝构造函数 187 10.3.4 拷贝构造函数方法的选择 188 10.4 指向成员的指针

Global site tag (gtag.js) - Google Analytics