-
디자인 패턴 - 팩터리 메서드 패턴(Factory Method Pattern)Java 2022. 3. 18. 01:52
팩터리 메서드는 객체를 생성 반환하는 메서드를 말한다.
여기서 패턴이 붙으면 하위 클래스에서 팩터리 메서드를 오버라이딩해서 객체를 반환하게 하는 것을 의미한다.
public abstract class Animal{ // 추상 팩터리 메서드 abstract AnimalToy getToy(); }// 팩터리 메서드가 생성할 객체의 상위 클래스 public abstract class AnimalToy { abstract void identify(); }public class Dog extends Animal{ // 추상 팩터리 메서드 오버라이딩 @Override AnimalToy getToy(){ return new DogToy(); } }public class DogToy extends AnimalToy{ public void identify(){ System.out.println("나는 강아지 장난감"); } }public class Main{ public static void main(String[] args){ // 팩터리 메서드를 보유한 객체를 생성 Animal bolt = new Dog(); // 팩터리 메서드가 반환하는 객체들 AnimalToy boltToy = bolt.getToy(); // 팩터리 메서드가 반환한 객체 사용 boltToy.identify(); } }"오버라이드 된 메서드가 객체를 반환하는 패턴"
'Java' 카테고리의 다른 글
디자인 패턴 - 템플릿 콜백 패턴(Template Callback Pattern) (0) 2022.03.21 디자인 패턴 - 전략 패턴(Strategy Pattern) (0) 2022.03.21 디자인 패턴 - 템플릿 메서드 패턴(Template Method Pattern) (0) 2022.03.18 디자인 패턴 - 싱글턴 패턴(Singleton Pattern) (0) 2022.03.17 디자인 패턴 - 데코레이터 패턴(Decorator Pattern) (0) 2022.03.17