Code 예제

팩토리 패턴 예제

김대근'IT공부 2018. 12. 17. 15:10

abstract class Factory2 {
 public abstract String getA();

 public abstract int getB();

 @Override
 public String toString() {
  return "ㅇㅇ" + getA() + "ㄴㄴ" + getB();
 }
}

class Test extends Factory2 {
 private String A;
 private int B;

 public Test(String A, int B) {
  this.A = A;
  this.B = B;
 }

 @Override
 public String getA() {
  return this.A;
 }

 @Override
 public int getB() {
  return this.B;
 }
}

class TestFactory {
 public static Factory2 getFactory(String A, int B) {
  if ("AA".equals(A)) {
   if (B == 11) {
    return new Test(A, B);
   }
  }
  return null;
 }
}

public class Factory {
 public static void main(String[] args) {
  Factory2 F1 = TestFactory.getFactory("AA", 11);

  System.out.println(F1.toString()); //ㅇㅇAAㄴㄴ11 이 출력된다.
 }
}

반응형