java 공장 방법 상세 및 실례 코드
공장 방법 모델에서 추상적인 공장 클래스는 창설 대상의 인터페이스를 정의하고 구체적인 대상의 창설 작업은 추상적인 공장의 구체적인 클래스를 계승하여 실현한다.
이점
클라이언트는 대상의 창설을 책임질 필요가 없기 때문에 각 종류의 직책을 명확히 했다. 만약에 새로운 대상이 증가하면 구체적인 클래스와 구체적인 공장 클래스만 증가하면 된다. 기존의 코드에 영향을 주지 않고 후기에 유지보수가 쉬워 시스템의 확장성을 강화한다
결점
추가 코드 작성, 하위 작업량 증가 필요
public class IntegerDemo {
public static void main(String[] args) {
Factory factory = new DogFactory();
Animal animal = factory.createAnimal();
animal.eat();
factory = new CatFactory();
animal = factory.createAnimal();
animal.eat();
}
}
abstract class Animal {//
public abstract void eat();
}
class Dog extends Animal {//
public void eat() {
System.out.println("a dog is eatting.");
}
}
class Cat extends Animal {//
public void eat() {
System.out.println("a cat is eatting.");
}
}
interface Factory {//
public abstract Animal createAnimal();
}
class DogFactory implements Factory {//
public Animal createAnimal() {
return new Dog();
}
}
class CatFactory implements Factory {//
public Animal createAnimal() {
return new Cat();
}
}
읽어주셔서 감사합니다. 여러분에게 도움이 되었으면 좋겠습니다. 본 사이트에 대한 지지에 감사드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
38. Java의 Leetcode 솔루션텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.