![](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FrCsVw%2FbtrB6PO4yks%2FvlBTsEaDv7rN92azvo0ow1%2Fimg.jpg)
[Java] 자바 Call by value... Call by reference?
메소드를 사용하면서 메소드 바깥에 선언된 변수를 '매개변수'를 통해 넘겨줄 수 있다. 그럼 메소드안에서 이 매개변수로 전달받은 값을 변경해주었을때 메소드 호출 이후에도 변경된 값이 유지될까? 결론부터 말하자면 기본 자료형(int, float 등)은 변경되지 않고 참조 자료형(객체 등)은 변경된다. Call By Value, Call By Reference 메소드에 매개 변수가 호출될 때 '값'을 전달하는지 '주소'를 전달하는지에 따라 아주 큰 차이가 있다. 매개 변수에 값을 전달하는 방식을 Call By Value, 주소를 전달하는 방식을 Call By Reference 라고 한다. (Pass By Value, Pass By Reference라고도 한다.) Call By Value의 값을 전달하는 방식은..