java - 메서드 호출방식 : 참조에 의한 호출

imjingu·2023년 8월 9일
0

개발공부

목록 보기
343/481

메서드 호출방식
참조에 의한 호출방식
매개변수의 타입이 참조형 타입일 때 사용
참조에 의한 호출은 메서드호출 시 참조 데이터의 위치가 매게변수에 전달
값에 의한 호출은 메모리에 동일한 값을 복사 후 사용
참조에 의한 호출은 메모리의 주소를 넘기기 때문에 값을 복사하지 않음

package chapter20230809;

public class test03 {
	/*
	 
	 */
	public static void increase(int[] array) {
		// 배열을 매개변수로 받아서, 원래 저장된 값보다 1이 증가한 값으로 업데이트
		for(int i = 0; i < array.length; i++) {
			array[i]++;
		}
	}
	
	public static void main(String[] args) {
		int[] refArray = {100, 800, 1000}; // 배열 선언 및 초기화, 배열은 참조형 데이터
		
		System.out.println("메서드 호출 전");
		for(int i = 0; i < refArray.length; i++) {
			System.out.println("refArray[" + i + "]: " + refArray[i]);
		}
		
		increase(refArray); // 리턴이 없음, increase에 refArray 주소를 전달
		
		System.out.println();
		System.out.println("메서드 호출 후");
		// 배열은 참조형이라서 메서드 호출 후 값이 변경
		for(int i = 0; i < refArray.length; i++) {
			System.out.println("refArray[" + i + "]: " + refArray[i]);
		}
	}

}

0개의 댓글