728x90
함수 호출 방법은 크게 두가지가 있다.
- Call by value(값에 의한 호출)
- Call by reference(참조에 의한 호출)
Call by value(값에 의한 호출)는 인자로 받은 값을 복사하여 처리를 한다.
Call by reference(참조에 의한 호출)는 인자로 받은 값의 주소를 참조하여 직접 값에 영향을 준다.
간단히 말해 값을 복사를 하여 처리를 하느냐, 아니면 직접 참조를 하느냐 차이다.
Call by value(값에 의한 호출)
장점 : 복사하여 처리하기 때문에 안전하다. 원래의 값이 보존이 된다.
단점 : 복사를 하기 때문에 메모리가 사용량이 늘어난다.
Call by reference(참조에 의한 호출)
장점 : 복사하지 않고 직접 참조를 하기에 빠르다.
단점 : 직접 참조를 하기에 원래 값이 영향을 받는다.
자바에서의 Call by value, Call by reference
C언어에서는 포인터를 이용해서 매개변수의 주소값을 넘겨 참조(Reference)할 수 있다.
JAVA에서는 포인터가 따로 없으며, 기본적인 매개변수는 Call by Value 이다.
728x90
'☕️자바 𝗝𝗔𝗩𝗔' 카테고리의 다른 글
자바 JVM, JDE, JDK (JDK와 JRE의 차이점) (0) | 2022.05.30 |
---|---|
[Java] 자바 문자열 비교 == equals() 차이점 (0) | 2022.05.19 |
[Java] 자바 String Pool과 new String (Java의 String은 어디에 저장되는가) (0) | 2022.05.19 |
[자료구조] 자바 Queue add, offer 메소드 차이 (0) | 2022.05.17 |
Java 클래스 메소드, 인스턴스 메소드 (0) | 2022.05.16 |
댓글