개발공부/JPA 프로그래밍

[1장] 메서드 체인이란??

기억지기 개발자 2023. 7. 24. 12:31

🏕️상황

책에서 member.getOrder().getOrderItem()라는 코드가 객체 그래프를 탐색하는 코드라고 쓰여있는데 이게 무슨 말인지 이해가 되지 않았다. 


member.getOrder().getOrderItem()이 자유롭게 객체 그래프를 탐색할 수 있는 코드인 이유는 자바에서 메서드 체인(Method Chaining)을 지원하기 때문이다. 

 

메서드 체인은 한 객체의 메서드 호출 결과를 바로 다른 메서드의 호출 대상으로 사용하는 방식을 말합니다. 위의 코드에서 member.getOrder() 메서드는 member 객체에 속하는 Order 객체를 반환하고, 그 다음에 .getOrderItem() 메서드를 호출하여 해당 Order 객체에 속하는 OrderItem 객체를 반환한다. 

 

이렇게 메서드 체인을 사용하면 객체 간의 관계를 손쉽게 탐색할 수 있다.

member 객체에서 Order 객체로 이동한 뒤, 다시 Order 객체에서 OrderItem 객체로 이동하는 과정을 하나의 코드 라인으로 표현할 수 있다. 이렇게 하나의 라인에 여러 메서드 호출을 연결하여 사용하므로 코드가 간결해지고 가독성이 향상된다.