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
번호 분류 제목 글쓴이 날짜 조회 수
56 Java 3.3.5 값복사 IT장인 2013.12.28 337
55 Java 1.6.3 할당의 예 IT장인 2013.11.21 338
54 Java 3.2.3 컴파일과 실행 IT장인 2013.12.28 340
53 Java 3.4.1 클래스 내의 메서드 IT장인 2013.12.28 341
52 Java 3.4.5 결론 IT장인 2013.12.28 343
51 Java 2.4.2 배우게 될 클래스 IT장인 2013.11.22 350
50 Java 2.3.3 클래스의 역할 IT장인 2013.11.22 353
49 Java 2.3.4 클래스와 데이터베이스 IT장인 2013.11.22 353
48 Java 3.2.1 자바 JDK IT장인 2013.12.28 353
47 Java 2.1.4 구조체의 사용 IT장인 2013.11.22 356
46 Java 2.2.2 클래스의 사용 IT장인 2013.11.22 358
45 Java 2.1.3 구조체 만들기 IT장인 2013.11.22 361
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6