자바에서는 함수 포인터를 제공하지 않는다. 그러나 객체 참조를 사용해서 비슷한 효과를 얻을 수 있다.
- 호출된 객체의 메소드에서 다른 객체의 메소드를 수행하도록 객체를 정의하는 것이 가능하다. 그런 메소드 하나만 달랑 외부에 제공하는 클래스의 인스턴스는 사실상 메소드 포인터의 역할을 한다.

전략 패턴을 사용할 때는 만약에 모든 인스턴스가 기능이 동일할 때 불필요한 객체 생성 비용을 절감하기 위해 싱글톤이어야 한다.

Posted by 서오석
,