Contents

조회 수 460 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄


3.3.6 값복사와 매개변수의 전달

자바에서 메서드를 호출할 때 매개변수가 전달되는 방식은 전부 값복사의 기법을 이용하고 있다. 즉 값복사를 이용해서 매개변수를 전달한 후 메서드를 호출하는 것이다.

□ 매개변수의 전달
◇ 자바의 매개변수의 전달은 값복사의 기법만을 사용한다.
◇ 이것을 값에 의한 호출(Call By Value) 또는 값복사에 의한 호출이라고 한다.

다음 구문에서 값복사의 의미를 되새겨 보자.

▒ sumB() 메서드의 선언
 
int sumB(int x, int y){
         int c;
         c = x + y;
         return c;
 }

▒ 메서드의 호출
 
int a = 3;
int b = 4;
int c = sumB(a,b);

지금까지 배운 것을 기초로 해서 본다면 다음 3가지가 메서드를 호출할 때의 값복사에 해당한다.

□ 값복사의 예 I
◇ x = a; //메서드를 호출할 때 값복사 발생
◇ y = b; //메서드를 호출할 때 값복사 발생
◇ c = sumB(a,b); //메서드의 리턴값을 c의 메모리에 값복사

알고 보면 다음의 구문도 메모리로 데이터를 값복사하는 행위에 해당한다.

□ 값복사의 예 II
◇ int a = 3;
◇ int b = 4;
◇ c = x + y;

자바에서는 값복사의 기법만이 존재한다. 이후에 배우게 될 모든 매개변수의 전달이나 모든 할당은 값에 의한 복사(Value Copy)에 해당한다.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
68 Java 3.6.7 결론 IT장인 2013.12.28 1156
67 Java 3.6.6 MotorCycle m = new MotorCycle() IT장인 2013.12.28 1746
66 Java 3.6.5 참조 변수의 타입 IT장인 2013.12.28 1243
65 Java 3.6.4 참조 변수끼리의 할당 IT장인 2013.12.28 1421
64 Java 3.6.3 참조 변수의 특징 IT장인 2013.12.28 1952
63 Java 3.6.2 참조값의 원리 IT장인 2013.12.28 1434
62 Java 3.6.1 객체의 메모리 생성 IT장인 2013.12.28 536
61 Java 3.5.5 private 멤버 필드를 사용하는 이유 IT장인 2013.12.28 2557
60 Java 3.5.4 private의 사용 이유 IT장인 2013.12.28 529
59 Java 3.5.3 private에 접근하는 방법 IT장인 2013.12.28 5154
58 Java 3.5.2 private의 접근과 컴파일 에러 IT장인 2013.12.28 1386
57 Java 3.5.1 접근제어란? IT장인 2013.12.28 728
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6