Java传值机制和图解
2021/6/28 14:20:26
本文主要是介绍Java传值机制和图解,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
Java方法的传参机制及堆栈传值图解
概括:若定义方法时声明了形参,调用此方法时需传入对应类型的参数。
1. 传递的参数类型是基本类型
基本类型传参时,传递的只是值,并非这个参数变量,例子如下:
public class ParameterTransfer { /*将传入值互换的方法*/ public static void replace(int a,int b){ int temp = a; a = b; b = temp; System.out.println("replace方法中a为:" + a); System.out.println("replace方法中b为:" + b); } public static void main(String[] args){ int a = 6; int b = 9; ParameterTransfer.replace(a,b); System.out.println("main方法中a为:" + a); System.out.println("main方法中b为:" + b); } }
输出结果为:
- 解析图如下:
2. 传递的参数类型是引用类型
引用类型传参时,传递的实质上是堆中某个地址码,即传递了对堆中某个对象的引用,所以只要有方法对其进行修改,会影响到参数本身所指向的堆中的具体对象。例子如下:
class Temporary{ int a; int b; } public class ParameterTransfer { /*换值的方法,需传入一个对象*/ public static void change(Temporary ty){ int temp = ty.a; ty.a = ty.b; ty.b = temp; } public static void main(String[] args){ Temporary ty2 = new Temporary(); ty2.a = 6; ty2.b = 9; /*传入对象给change方法*/ ParameterTransfer.change(ty2); System.out.println("main方法中ty2.a为:" + ty2.a); System.out.println("main方法中ty2.b为:" + ty2.b); } }
输出结果为:
-
解析图如下:
-
总结:基本类型传值传递的是值,引用类型传值传递的是对对象的引用。
这篇关于Java传值机制和图解的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-04TiDB 资源管控的对撞测试以及最佳实践架构
- 2024-07-03万字长文聊聊Web3的组成架构
- 2024-07-02springboot项目无法注册到nacos-icode9专业技术文章分享
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现