사용자 도구


Factory Method 패턴

같은 클래스를 상속받는 여러 파생 클래스 중 하나의 클래스에 대한 객체를 만드는 유틸리티 클래스.
Factory Method 패턴의 경우 Factory 클래스에서 한 가지 Product만 만든다.

타입

Creational Pattern

문제

런타임에 성질, 파라메터가 결정되는 객체를 만들고 싶다. 컴파일 타임 이전, 즉 코드 작성 시에는 어떤 클래스의 객체가 초기화될지 알 수 없다.

해결

객체를 만드는 인터페이스를 정의하고 어떤 클래스를 인스턴스화할지 결정하는 서브클래스를 정의한다.

클래스 다이어그램

예제

참고