Java中只有按值传递,没有按引用传递。

基本类型传递的是值的副本;

引用类型传递的是引用的副本。

基本类型就不说了,主要看看对象做参数的情况。

public class Main {

public static void main(String[] args) {

Record record = new Record();

record.name = "interesting";

f(record);

System.out.println(record.name);

}

public static void f(Record x) {

x.name = "我变了";

}

}

输出:我变了

因为传递的是引用的副本,也就是说在函数里面把引用指向的真实对象变了,函数外面的引用还是指向原先的对象。

public class Main {

public static void main(String[] args) {

Record record = new Record();

record.name = "interesting";

f(record);

System.out.println(record.name);

}

public static void f(Record x) {

x = new Record(); //改变这个引用指向的对象

x.name = "我变了";

}

}

输出:interesting

看结果就很好理解了。

java 传递函数_java传递函数参数(值传递)相关推荐

  1. Java中传参数--值传递和引用传递

    ** Java中传参数–值传递和引用传递 ** 在Java中,传参数分为值传递和引用传递. 在Java中的数据类型分为两大类:一类是引用类型,也叫类类型(除了String以外的所有复合数据类型,包括数 ...

  2. java是值传递还是引用传递_Java 到底是值传递还是引用传递?

    点赞.收藏还挺多,求一波关注 ------------------------------------------------------------ 没人邀请,自己强行回答一波. 关于这个问题,引发 ...

  3. 【Java】探究Java方法的参数传递是值传递还是引用传递

    测试思路 每个更改形参的方法,返回值都是void,不同方法的参数设置不同类型. 注意在方法内测地址的时候在改之前测一下,才能看出传入参数是不是传了地址.(注意反正OS的内存地址是虚拟的,JVM中的也是 ...

  4. Java中将函数作为参数进行传递

    最近一直在做一个项目的前端,使用的框架是vue,还有一些基于vue的组件库,学习了很多js的相关内容.今天突然想看一下Java,发现好久不看忘记了许多,还是希望每天晚上可以写点博客,当做学习,复习的方 ...

  5. java值传递和引用传递简单_Java里的值传递与“引用传递”——一些想法

    这两天在看Java的时候看到了方法中的值传递与引用传递,对于值传递我们都可以理解,非常的简单,但是对于引用传递,对于我们学过c++的人来说,那可不就来劲了吗,直接写一个函数来用"&& ...

  6. java 地址传递 返回值_Java中的值传递和引用传递

    这几天一直再纠结这个问题,今天看了这篇文章有点思路了,这跟C++里函数参数为引用.指针还是有很大区别. 当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里 ...

  7. java形参、实参、值传递、引用传递

    工作中,发现大多数人对值传递,引用传递理解不深,下面写一遍文章详细聊聊. 一.形参 形参:用来接收调用方法时传递的参数,只有在被调用时才分配内存,一旦调用结束,就释放内存空间.因此仅在方法内有效. p ...

  8. Java深入学习系列之值传递Or引用传递?

    我们来看一个新手甚至写了多年Java的朋友都可能不是十分确定的问题: 在Java方法传参时,究竟是引用传递还是值传递? 为了说明问题, 我给出一个非常简单的class定义: public class  ...

  9. C++ 函数参数 值传递与引用传递

    以前我们在C语言中函数参数传递过程中,如果我们想要让当A函数作用域中的变量经过B函数处理之后的数值仍然在A函数中生效,这个时候函数参数的传递时需要引用方式去传递,方式如下: #include < ...

最新文章

  1. Java项目:在线电影售票系统设计和实现(java+Springboot+ssm+mysql+jsp+maven)
  2. 思科发力虚拟化和云服务 推出多款新品
  3. 【研发管理】聊一聊DevOps
  4. 用python发送email
  5. 2000服务器文件共享,Win2000 Server实现对共享文件的监控
  6. Java讲课笔记09:类与对象
  7. python中的content方法_content最新:python计算Content-MD5并获取文件的Content-MD5值方式_爱安网 LoveAn.com...
  8. 买基金,是长期持有好,还是短线操作好?
  9. 计算机系统结构名词解释
  10. imx6ul:uboot-2013.10启动过程解析
  11. Cursor 详解及使用
  12. 2021-08-26 工作记录--YDUI-带确认按钮的弹出框
  13. 计算机大二学生个人总结报告,计算机学生大二第二学期自我总结计划自我总结计划.doc...
  14. AutoSF- Searching Scoring Functions for Knowledge Graph Embedding
  15. Java内存马攻防实战——攻击基础篇
  16. 大数据专业应该怎么学习
  17. 中兴如何远程服务器时间同步,业界领先的中兴通讯时间同步解决方案
  18. permit doing 与permit to do详细区别
  19. UWB高精度定位最优方式:全无线方式部署UWB定位系统解析
  20. 取消WPS对pdf文件的强制文件默认关联

热门文章

  1. C# 如何获取屏幕分辨率缩放比例
  2. 强大软件防盗版控件.NET Reactor
  3. 领域驱动设计之聚合与聚合根实例一
  4. Maven:Generating Project in Batch mode 卡住问题
  5. 百度技术研发笔试题目1
  6. Django2.2-LookupError No installed app with label admin
  7. 解决'pip' 不是内部或外部命令,也不是可运行的程序或批处理文件的问题
  8. CSS中提升优先级属性!important的用法总结
  9. Git的配置SSHKey
  10. php和openresty效率,openresty say_hello 性能测试