
[Java] 복제와 참조
·
TIL/Java
아래 코드는 복제와 참조에 관련된 간단한 코드이다. runValue 메소드를 실행하면 결과는 1이 나오고, runReference 메소드를 실행하면 결과가 2가 나온다. 21행을 살펴보면 변수 b에 담긴 인스턴스의 id 값을 2로 변경했을 뿐인데 a.id의 값도 2가 된 것이다. 변수 b와 변수 a에 담긴 인스턴스가 서로 같다는 것을 의미한다. * 자바에서는 int와 같이 기본 데이터 타입은 복제를 한다. 기본 데이터 타입이 아닌 것은 참조가 되어 참조 데이터 타입이라고 하며, new 사용해서 객체를 만다는 모든 데이터 타입은 참조 데이터 타입이라고 생각하자! 아래 코드는 메소드의 매개변수는 어떻게 동작하는지 살펴보는 코드이다. 먼저, 4행 ~ 12행의 코드를 살펴보자 메소드 _value의 매개변수는 기..