인프런 커뮤니티 질문&답변

hjy93992님의 프로필 이미지
hjy93992

작성한 질문수

코딩으로 학습하는 GoF의 디자인 패턴

인터프리터 패턴 2부 - 패턴 적용하기

익명클래스로 객체 생성시 의문점

작성

·

466

0

강의에서 사용하는코드(위키피디아에 있다던 예제)입니다.

PostfixExpression.minus() 메소드는

객체(참조변수를 myPostfix 라고 하겠음)를 생성하게 되고,

이후에 myPostfix.interpret() 메소드를 호출할수 있고, interpret() 메소드가 호출될때 left와 right에

접근 하게 됩니다.

이러한과정에서, left와 right의 파라미터가 넘어와서

MyPostfix 라는 객체가 생성되는 시점과, myPostfix.interpret()라는 메소드가 호출되는 시점은 다른데도 myPostfix.intepret()가 호출될때도 left, right를 사용한다는것은, left,right를 내부적으로 저장하고 있다는 것같습니다. (일반적으로 객체가 내부적으로 필드에 값을 갖고있는것처럼)

 

MyPostfix라는 객체가 생성될때 그 객체 안에서 left,right를 관리하고 있는것인지..? 설명 부탁드립니다.

 

 

답변 1

0

함수형인터페이스, 람다 키워드 가지고 공부해보시면 좋을거같아요

인터페이스를 익명클래스로 구현하면서 interpret 메소드를 재정의하고, 그때 minus메소드에서 파라미터로 받아오는 값을 가지고 재귀적 선언을 합니다.

hjy93992님의 프로필 이미지
hjy93992
질문자

답변감사합니다^^

hjy93992님의 프로필 이미지
hjy93992

작성한 질문수

질문하기