인자 전달은 메서드에 데이터를 전달하는 과정을 의미합니다. 메서드가 수행하는 작업을 위해 필요한 데이터를 전달하기 위해 사용됩니다. 이때 전달되는 데이터를 매개변수(Parameter)라고 하며, 메서드 정의에 매개변수의 타입과 이름이 명시됩니다.
메서드 인자 전달 방식
- 값에 의한 전달 (Call by Value) : 값에 의한 전달은 메서드 호출 시에 인자로 전달되는 데이터의 복사본이 메서드의 매개변수로 전달되는 방식입니다. 즉, 메서드 내에서 매개변수 값을 변경해도 원본 데이터는 변하지 않습니다. 기본 데이터 타입을 인자로 전달할 때 적용됩니다.
- 참조에 의한 전달 (Call by Reference) : 참조에 의한 전달은 메서드 호출 시에 데이터의 참조(메모리 주소)가 메서드의 매개변수로 전달되는 방식입니다. 이 경우 메서드 내에서 매개변수를 통해 원본 데이터를 수정할 수 있습니다.
값에 의한 전달 (Call by Value) 예제
public class Example {
public static void main(String[] args) {
int num = 5;
modifyValue(num);
System.out.println("num: " + num); // 출력: num: 5
}
public static void modifyValue(int value) {
value = 10;
}
}
참조에 의한 전달 (Call by Reference) 예제
public class Example {
public static void main(String[] args) {
int[] arr = {1, 2, 3};
modifyArray(arr);
System.out.println("arr[0]: " + arr[0]); // 출력: arr[0]: 100
}
public static void modifyArray(int[] array) {
array[0] = 100;
}
}
'JAVA > 객체 지향 프로그래밍' 카테고리의 다른 글
[JAVA] 클래스의 정의와 구조 (0) | 2023.08.15 |
---|---|
[JAVA] 재귀 메서드와 재귀 호출 (0) | 2023.08.11 |
[JAVA] 오버로딩과 가변 인자 (0) | 2023.08.11 |
[JAVA] 메서드의 개념과 정의 (0) | 2023.08.11 |
[JAVA] 객체 지향 프로그래밍의 개념과 특징 (0) | 2023.08.10 |