方法参数

将参数传递给方法(或函数)有两种方法:

按值传递(call by value)表示方法接受的是调用者提供的值;

按引用调用(call by reference)表示方法接受的是调用者提供的变量地址。

Java程序设计语言都是采用按值传递。

ava中方法参数的使用情况:

  • 一个方法不能修改一个基本数据类型的参数(即数值型或布尔型)。
  • 一个方法可以改变一个对象(数组)参数的状态。
  • 一个方法不能让对象参数(数组)引用一个新的对象。
基本数据类型传递时;首先先给i,j赋值,但是在调用的时候,是调用i,j的副本i`和j`经行运算赋值等操作,最后出来的i,j是不变的。

在对象或者数组作为参数传递时,他们赋值的时候会在堆内存中开辟一个空间,例如p,但是当调用的时候,赋值一个副本s来进行赋值运算时,s没有开辟新的堆内存空间,而是与原来的共用一个堆内存空间,当s改变的时候,堆内存的值就会改变,在读取p的时候,p也是用到堆内存中的数据,所以会跟着改变。



猜你喜欢

转载自blog.csdn.net/a15252006129/article/details/80230858