call by value vs vall by reference
call by value
- 전달받은 값을 복사하여 처리.
- 즉 전달받은 값은 변경하여도 원본은 변경되지 않는다(무조건x)
- value일 때(변경 x)
- object일 때(변경 x)
- value in object(변경 가능)
call by reference:
- 전달받은 값을 직접 참조.
- 즉 전달받은 값을 변경할 경우 원본도 같이 변경.
주소 값을 복사해서 넘기기 때문에 이는 call by value입니다. 복사된 주소 값으로 참조가 가능하니 주소 값이 가리키는 객체의 내용 변경된다.