java语言中方法之间数据传递的探讨

java语言中方法之间数据传递的探讨

ID:23432824

大小:74.12 KB

页数:7页

时间:2018-11-07

java语言中方法之间数据传递的探讨_第1页
java语言中方法之间数据传递的探讨_第2页
java语言中方法之间数据传递的探讨_第3页
java语言中方法之间数据传递的探讨_第4页
java语言中方法之间数据传递的探讨_第5页
资源描述:

《java语言中方法之间数据传递的探讨》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Java语言中方法之间数据传递的探讨摘要:在面向对象的java语言中,方法是处理数据的基本模块,方法之间的数据传递是掌握编程方法的关键。本文将其方法间的数据传递归纳为:方法的实参和形参间的值传递和引用传递;方法的返回值可以分为基本数据或对象的引用;并通过实例进行了说明。关键词:对象;引用;值传递;引用传递中图分类号:TP312文献标识码:A1问题的提出在面向对象的java语言中,类是问题空间的高度抽象和概括,是一个模板,而对象是类的特例,解空间的具体实现则是由若干个类的对象集合而成。方法是类的动态属性

2、,代表了类所具有的功能和操作。Java语言中的方法既可以在类中,也可以在接口中声明,但是,它们只能在类中实现。java语言中的所有操作都是用方法来实现的。一个方法通过另一个方法的调用被激活,一个被调用的方法被激活,既需要指定被调用方法的方法名,也需要为被调用的方法提供相应的数据,以便于被调用方法对数据的加工处理,乃至于将加工处理的结果返回给方法的调用者。2Java语言中方法间的数据传递方法方法是数据加工处理或相应操作的基本模块,为了实现某种需求而调用一个方法,需要为被调用的方法传递数据,以便于被调用的

3、方法依据所提供的数据进行相应的操作。C++语言的函数间的数据传递可以分为:数值传递、地址传递和引用传递。地址传递的形参是同类型的指针,由于指针操作的不安全等问题,java语言屏弃了指针,故java语言方法之间的数据传递只有数值传递和引用传递。2.1方法间的数值传递所谓的数值传递又称为值传递,数值传递的特征是:调用方法的实参可以是常量、变量或者是表达式,形参则是对应数据类型的变量。如果实参是变量,则实参和形参是相互独立的两个单元。在方法调用的过程中,实参的值将拷贝到形参中,此后形参的任何修改都不会影响实

4、参。数值传递方法见例1。[例1]数值传递调用方法举例:importjava.io.*;publicclassValueTransmit{publicstaticvoidmain(Stringargs[]){intx=5,y=66;System.out.println(“在主方法,交换前的:x=”+x+“,y=”+y);swap(x,y);System.out.println)“在主方法,交换后的:x=”+x+“,y=”+y);}staticvoidswap(intx,inty){inttemp;Sys

5、tem.out.printlnj“在swap方法未交换时:x=”+X+“,y=”+y);temp=x;x=y;y=temp;System.out.printlnj“在swap方法交换之后:x=”+X+“,y=”+y);}}例1程序的输出结果如下所示:在主方法,交换前的:x=5,y=66在swap方法未交换时:x=5,y=66在swap方法交换之后:x=66,y=5在主方法,交换前的:x=5zy=66在例1程序中,方法调用的“Swap(x,y);”中的实在参数x,y是两个单元,而形式参数中的X,y又是两

6、个单元,它们是互相独立的。所以,对形式参数的改变并不影响实在参数的内容;程序的运行结果也验证上述观点。具体参数传递请见图1所示。2.2方法间的引用传递方法之间的数据传递还有一种方法,就是引用传递。引用传递的实质就是将实在参数的地址传递给形式参数引用,也就是形式参数是实在参数的别名。引用传递方法请见例2。[例2]引用传递方法举例://ReferenceTransmit.java参考源代码如下:importjava.io.*;publicclassReferenceTransmit{publicstati

7、cvoidmain(Stringargs[]){inta[]={9,-3,6,22,-77,999},n=6;System.out.print(“数组排序前的情况:”);forjinti=0;iarr[j])p=j;if(p!=i){temp=arr[p];arr[p]=arr[i];arr[i]=temp;}}}}例2程序的执行结果如下所示:数组排序前的情况:9-3622-77999选择排序后的情况:-77-36922999在例2程序的方法调用语句“SelectSort(a,n);”中,a是数组名,

8、是地址常量,是数据区域的首地址;SelectSortfintarr[],intn)的形式参数arr[]是数组的引用,而不是数组声明或定义。在形式参数和实在参数的结合中,形式参数arr是实在参数a的别名。在方法SelectSort()中,对arr[i]的任何修改,实际上就是对实在参数a[i]的修改。程序的运行结果也证明了这一点。3Java语言方法返值的分类方法调用有时需要将方法的处理结果返回给方法的调用者,这样的方法将有返值。依据方法返值与否可以将方法分为

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。