자바의정석

[자바의 정석 - 기초편] ch6-24,25 참조형 매개변수, 참조형 반환타입

유호야 2022. 3. 8. 19:23
반응형

예제 6-7

 참조형 매개변수

어떤 값을 가리키는지 확인해야 한다.

객체를 다룰 수 있는 리모콘을 준 셈이다

 change 메서드에서 참조변수를 이용해서 객체를 다룰 수 있다

객체의 주소를 알기 때문에 참조변수 객체의 값을 읽고, 쓰기가 모두 가능한 것이다.

값만 복사한 것과 주소값을 복사한 것이 다름을 알 수 있다.


ch6-25 참조형 반환타입

 

메서드의 반환타입이 참조형인 경우는
객체의 주소를 반환한다
= 객체를 반환한다고 생각해도 된다.

반환타입과 변수의 타입이 일치해야 한다. 
그 결과를 받는 타입이 참조형이어야 한다. 

copy 메서드가 하는 일이 새로운 객체를 만들고, 복사하고, 반환
main 메서드에서 복사한 객체를 d2 사용할 수 있게 되는 것

참조변수가 없는 이유는 static 메소드라서 그런 것도 있지만, 같은 클래스에 있어서 
같은 클래스에 있는 경우 참조변수를 생략할 수 있고, 
static 메소드는 객체 생성 없이, 호출이 가능하다. 

e.copy 형식으로 호출을 해야 하는데, static 메서드이기 때문에 
객체 생성 없이 호출이 가능하다. static이기 때문에 그리고 같은 클래스 내에 있기 때문에
참조변수 필요 없이 메서드 이름으로 바로 copy() 로 호출이 가능하다. 

정석은 객체를 생성한 후에 호출하는 것이 기본이다. 
여기서는 static을 깊게 알아보지는 않는다.

여기에서는 예제를 간단히 하기 위해서 static을 사용했다.

반응형