Java中引用调用的定义推断我们使用参数作为引用。我们将参数引用作为参数发送给将使用它的函数。我们将这两个参数作为实际参数和形式参数提供。这些将指的是确切的位置。这意味着每当在特定函数中进行更改时,这些更改将反映在调用进程时的实际参数中。无需显式指定或调用它。发送了变量的地址,这意味着这些实际变量正在调用该函数。
广告 该类别中的热门课程 JAVA 掌握 - 专业化 | 78 课程系列 | 15 次模拟测试开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
下面是在Java中实现引用调用的方法:
void function_name(datatype1, datatype2); //Function declaration int main() { Datatype declaration; Function Call(datatype1, datatype2); } Function_name () { // Function definition }
说明:上面的语法首先声明一个函数。与 C 不同,Java 中没有关于获取特定地址处的变量的具体规定。 Java 使用按值调用,它也传递引用变量。
引用调用的基本功能是引用变量的地址。因此,如果变量的地址发生任何变化,无论在哪里调用使用它的函数,都会反映出来。下面的代码将帮助您更好地理解此功能。
代码:
Void inc(int ); Public static voidmain(string args[]) { int a = 10; System.out.println("Before function was called the Value of a = ", a); void inc(); System.out.println("After function is called Value of a = ", a); } Void inc(intx) { int x = x + 1; }
这里我们用变量声明了函数 inc。之后,我们声明了一个变量。该变量将采用定义的值。但随着它的进行,我们调用“inc”函数。函数‘inc’将被调用,每当它被调用时,它都会指向变量‘a’的位置。它将创建引用变量的副本,一旦有值,这些值将被传递给所使用的方法。该引用指向变量“a”的地址。它将递增该值,然后当调用该函数时,它会从此地址获取该值。在本例中它将是 11,因为 inc 函数将值增加 1。该值将在 main 中打印。我们还可以创建引用变量的副本。如果创建新的对象或变量以供引用,则不会受到影响,因为主地址保持不变。
我们可以再看几个例子,这将帮助我们更好地理解:
通过使用“按引用调用”在 Java 中交换数字。下面的代码是一个示例,我们可以使用引用调用来交换两个数字:
代码:
public class EduByReference { public static void main(String[] args) { int num1 = 55; int num2 = 85; System.out.println("The values before swapping are: number1 = " + num1 + " and number2 = " + num2); // Calling the function to swap swapByReference(num1, num2); System.out.println("\nThe numbers before and after swapping will be same in main:"); System.out.println("Once the swapping is done, the values will be back to original: num1 = " + num1 + " and num2 is " + num2); } public static void swapByReference(int num1, int num2) { System.out.println("Before swapping in function locally, num1 = " + num1 + " num2 = " + num2); // Swapping number1 and number2 int temp = num1; num1 = num2; num2 = temp; System.out.println("After swapping in function locally, num1 = " + num1 + " num2 = " + num2); } }
输出:
说明:上面的程序正在交换两个数字。我们采用了两个整数变量 a 和 b,其值分别为 55 和 85。然后我们调用函数 swapByReference(a, b)。在此函数中,我们获取从 main 发送的这些变量。该函数获取 a 和 b 的值,然后交换这两个变量的值。对于交换,我们使用了另一个变量“c”。完成后,该函数将返回 85 和 55 的值。我们看到,主要值与以前相同。这就是引用调用的用法。调用该函数后,原始值将按原样存储,并且值会因该函数而更改。原始值保持不变。上述函数的输出如下。
您可以看到,一旦函数完成工作,由于变量的地址,原始值被保留。变量没有改变它们的位置。
在 Java 中使用引用调用来添加两个数字:
代码:
public class EduAddByReference{ int d=50; public void add(int d){ d=d+100;//These changes will happen locally, that means it will be reflected only in this function System.out.println("The value in function after performing addition is " + d); } public static void main(String args[]){ EduAddByReference edad=new EduAddByReference(); System.out.println("before change "+edad.d); edad.add(500); System.out.println("after change "+edad.d); } }
输出:
说明: 上面的程序是 Java 中调用引用的另一个示例。在主体部分,我们调用了函数 EduAddByReference()。该函数从主函数中获取数字并将其相加。该版本正在打印中。变量的该值将保留在该函数的本地值。一旦函数的控制权转到主函数,它就会再次打印变量,它将具有原始值。您可以检查下面的输出,这将帮助我们让这个程序更好地运行。
Java 中的引用调用调用函数并使用操作数或变量的地址来检查数据。该值在本地发生变化,并且仅在函数范围内持续存在。通过引用调用有助于保持原始值完整并在需要时修改它们。每当您希望变量在本地执行某些操作时都可以使用它。它保留了变量的原创性。
以上是Java 引用调用的详细内容。更多信息请关注PHP中文网其他相关文章!