순서
1. 인수 전달 방법
2. call by value
3. call by reference
4. Java의 call by value
✅ 인수 전달 방법
- 함수 호출 시 인수를 전달하는 방법은 크게 두 가지가 존재
- 변수가 가진 값을 복사하여 전달 → call by value
- 변수에 대한 주소값을 전달 → call by reference
✅ Call By Value
- 변수의 값만 복사하여 전달하기 때문에,
호출한 곳에서 값을 변경해도 원래 변수에는 영향이 없음
✅ Call By Reference
- 변수의 주소값 자체를 전달하기 때문에,
호출한 곳에서 값을 변경하면 원래 변수도 변경됨
: 지역 변수와 함수 호출을 저장하는데 사용되는 메모리 영역
: LIFO(Last In, First Out) 구조
: 고정된 크기를 가지며 운영체제에 의해 관리됨
**heap 영역
: 프로그램 실행 중 동적으로 할당된 데이터를 저장하는데 사용되는 메모리 영역
: 메모리의 정렬되지 않은 집합
: 동적인 크기를 가지며 프로그래머에 의해 관리됨
✅ Java의 Call By Value
- 자바에는 call by reference가 없음
- 자바에서 매개변수는 값이 복사되거나, 주소값이 복사되는 call by value로서 동작
- 포인터를 사용할 수 있는 C언어와 다르게 자바는 포인터를 철저하게 숨겨서
개발자가 직접 메모리 주소에 접근하지 못하게 되어있음
'개발 공부' 카테고리의 다른 글
[SVN vs Git] feat. 형상 관리 툴 (0) | 2023.08.03 |
---|---|
[기본 타입, 래퍼 클래스] feat. 박싱, 언박싱 (0) | 2023.06.20 |
[HTTP, 웹소켓] feat. AJAX (0) | 2023.06.13 |
[FTP, SFTP] feat. SSH (0) | 2023.06.01 |
[OSI 7계층, TCP/IP 4계층] (0) | 2023.06.01 |