工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。
在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。
1、定义接口
public interface Weapon {
public void fireInTheHole();
}
2、创建接口的实现类
public class RPG implements Weapon{
public void fireInTheHole() {
System.out.println("火箭筒");
}
}
public class ZhuanTou implements Weapon{
public void fireInTheHole() {
System.out.println("砖头");
}
}
3、创建一个工厂,生成基于给定信息的实体类的对象。
public class WeaponFactory {
public static Weapon getWeapon(String weapon) {
if (weapon == null) {
return null;
}
if (weapon.equalsIgnoreCase("rpg")) {
return new RPG();
} else if (weapon.equalsIgnoreCase("ZhuanTou")) {
return new ZhuanTou();
}
return null;
}
}
4、使用工厂创建对象
public class Factory_ {
public static void main(String[] args) {
//通过工厂造火箭筒
System.out.println(WeaponFactory.getWeapon("rpg"));
//通过工厂造砖头
System.out.println(WeaponFactory.getWeapon("zhuantou"));
}
}