概述
java的数据类型有基本数据类型(byte、short、int、long、float、double、char、boolean)和引用数据类型(数组、接口、引用)。因此,java中方法参数的传递也包含这两种类型参数的传递,其一是对于基本数据类型是按值拷贝的方式传递参数;其二是对于引用数据类型是按拷贝引用的方式传递参数。
一、按值传递
对于基本数据类型是按值传递的,按值传递的意思就是值的传递按值拷贝的方式传递参数,形参或实参的改变互不影响。举例说明如下:在下图1中在主函数main中声明了一个局部变量num,调用f1(num)后num的值并没有发生变化,还是原来的1。因为在主函数main中各有一个栈变量来保存num的值,它们之间是相互独立的,主函数main中num的值不会受f1(num)中形参num改变的影响。
图1基本数据类型参数传递
二、按引用传递
引用传递的是参数的地址,它们实际上指向同一块内存空间,当形参发生变化时,实参也将发生变化。举例说明如下,定义一个类A,类A里有成员变量a,如图2所示。如图3所示,定义一个测试类ParameterTest2,此处的形参指的是f1函数中的param变量,实参指的是main函数中的param。当f1函数中参数param发生变化时,主调函数main中的param也将发生变化,因为此时的形参和实参实际上是共享一块内存空间,实际运行结果如图4所示。数组和接口参数的传递也是同样的原理。
图2类A的定义
图3引用参数传递
图4引用参数传递运行结果
感谢阅读,动一动您的手指,分享给身边的朋友吧!谢谢!
长按识别二维码关注本文公众号
最后
以上就是现代翅膀为你收集整理的每日一练4: java方法参数的传递的全部内容,希望文章能够帮你解决每日一练4: java方法参数的传递所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复