Java를 포함한 모든 프로그래밍 언어에서 함수를 호출하고 매개변수를 객체나 포인터 대신 값으로 전달하는 것을 '값별 호출'이라고 합니다. 포인터가 명시적으로 사용되지 않는 특정 Java 구현에서는 이를 "값에 의한 호출"로 처리합니다. 이 시나리오에서 함수는 메모리에 저장된 변수 값의 복사본을 인수로 받습니다.
무료 소프트웨어 개발 과정 시작
웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등
구문
"값에 의한 호출" 구문은 모든 언어에서 사용되며 어느 정도 유사합니다.
Function: Function_name( parameter1, parameter2) { Int variable_name1; Int variable_name2; }
여기서 함수 매개변수는 객체가 아닌 값으로 전달됩니다.
"값에 의한 호출"은 데이터 변수를 메모리 위치에 할당합니다. 이와 관련된 데이터는 이 메모리 위치에 저장될 수 있습니다. 단, 변수가 소멸되지 않는 한 초기값 할당 이후 동일한 메모리 영역 내에서 데이터 조작은 지원되지 않습니다. 예를 들면 다음과 같습니다.
Int value=5;
아래에 언급된 예시는 다음과 같습니다.
아래 예에서는 add()라는 함수에 값을 사용하여 데이터를 전달하는 방법을 설명합니다. add() 함수는 데이터를 매개 변수로 사용하고 함수 정의에서 볼 수 있듯이 데이터에 200을 추가한 후 조작된 데이터를 제공합니다. 하지만 여기서는 인쇄 기능을 포함한 모든 기능에서 값을 사용하고 있으므로 “입력” 변수의 값은 변경되지 않습니다.
코드:
public class Main { int input=20; // The below function will manipulate the data passed to it as parameter value. void addition(int input){ input=input+200; } public static void main(String args[]) { Main t_var=new Main(); System.out.println("before change "+t_var.input); t_var.addition(1000); // Here we pass 500 value instead of any reference. System.out.println("after change "+t_var.input); } }
출력:
아래 예에는 '곱하기'라는 함수가 있습니다. 이 함수는 두 개의 매개변수 값을 사용하고 함수에서 이러한 매개변수를 곱하여 최종 출력을 제공합니다. 여기서는 정수를 저장하기 위해 새로운 메모리 바이트가 할당되었기 때문에 이전 경우와 달리 인쇄 기능을 통해 값이 성공적으로 저장되고 출력 화면에 표시됩니다.
코드:
public class Main { public static void main(String[] args) { int a = 30; int b = 45; System.out.println("The values we have inputted are: a = " + a + " and b = " + b); System.out.println(""); multiply(a, b); System.out.println("Here we are checking that if we pass parameters by value then what will be the product of multiplication of two values."); } public static void multiply(int a, int b) { System.out.println("Before multiplying the parameters, a = " + a + " b = " + b); int product = a*b; System.out.println("After multiplying the parameters, product = " + product); } }
출력:
"Call by Value"는 사용되는 특정 언어에 관계없이 프로그래밍 언어에서 사용되는 중요한 개념입니다. JAVA, C, C++, Python 등 모든 언어는 하나 이상의 매개변수를 사용하여 결과를 제공하는 함수를 사용합니다. "참조에 의한 호출"은 변수 자체의 값이 아닌 객체를 사용합니다. 동적 프로그래밍에서는 변수의 객체를 생성하므로 "참조에 의한 호출"을 사용합니다.
위 내용은 값에 의한 Java 호출의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!