【Design Pattern】Factory

1.產品接口,產品實現類和簡單工廠一樣
package Factory;

public interface Animal {

public void makeSound();

}

package Factory;

public class Dog implements Animal{

@Override
public void makeSound() {
System.out.println("wang");
}
}

package Factory;

public class Cat implements Animal{

@Override
public void makeSound() {
System.out.println("miao");
}
}


2.工廠接口類
package Factory;

public interface AnimalFactory {

public Animal createAnimal();
}


3.工廠實現類
package Factory;

public class DogFactory implements AnimalFactory{

@Override
public Animal createAnimal() {
return new Dog();
}
}

package Factory;

public class CatFactory implements AnimalFactory{

@Override
public Animal createAnimal() {
return new Cat();
}

}


4.demo
package Factory;

public class AnimalFactoryDemo {

public static void main(String[] args){
AnimalFactory dogfactory = new DogFactory();
dogfactory.createAnimal().makeSound();
AnimalFactory catfactory = new CatFactory();
catfactory.createAnimal().makeSound();
}
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章