JAVA

10. 참조형 반환타입

seongju.lee 2022. 9. 20. 21:14

메서드의 return 타입이 참조형인 경우,
스택의 흐름이 어떻게 되는지 확실히 알고 익숙해져야 한다.

 

class Data2 {
	int x;
}


public class ReferenceReturnEx {

	public static void main(String[] args) {
		
		
		Data2 d = new Data2();
		d.x = 100;
		
		Data2 d2 = copy(d);
		
		System.out.println("d.x = " + d.x);
		System.out.println("d2.x = " + d2.x);
	
	}
	
	static Data2 copy(Data2 d) {
		
		Data2 tmp = new Data2();
		
		tmp.x = d.x;
		
		return tmp;
		
	}
	

	

}
  • 해당 코드는 copy라는 메서드의 반환 타입을 Data2로 함으로써, 참조형 타입 반환을 지정한 코드이다.
  • 기본형 타입을 반환하는 것 뿐만 아니라, 객체 자체를 반환하는 참조형 타입 반환도 알고 있어야 한다.
  • 위 코드를 디버깅 해보면서 스택의 흐름을 생각 해봐야 한다.