一起学Java(四十九)----- 工厂设计模式
2021-01-14 21:17
标签:空调被 method rgs 程序 一个 设计模式 name 抽象 return 不积跬步,无以至千里;不积小流,无以成江海。 Java语言基础 Java的工厂设计模式 工厂模式:主要用来实例化有共同接口的类,工厂模式可以动态决定应该实例化那一个类。 工厂模式的形态 1:简单工厂(Simple Factory) 简单工厂(Simple Factory)
又叫静态工厂,是工厂模式三中状态中结构最为简单的。主要有一个静态方法,用来接受参数,并根据参数来决定返回实现同一接口的不同类的实例。 具体的例子:假设一家工厂,几生产洗衣机,有生产冰箱,还有空调等等. 先为所有产品定义一个共同的产品接口: 接着我们让这个工厂的所有产品都必须实现此接口: 一个工厂类,有它来负责生产以上的产品: 开始下定单: 程序输出: 博客借鉴:https://www.jb51.net/article/127702.htm 一起学Java(四十九)----- 工厂设计模式 标签:空调被 method rgs 程序 一个 设计模式 name 抽象 return 原文地址:https://www.cnblogs.com/smilexuezi/p/12938860.html
2:工厂方法(Factory Method)
3:抽象工厂(Abstract Factory)interface Product{
}
class Washer implements Product{
public Washer(){
System.out.println("洗衣机被制造了");
}
}
class Icebox implements Product{
public Icebox(){
System.out.println("冰箱被制造了");
}
}
class AirCondition implements Product{
public AirCondition(){
System.out.println("空调被制造了");
}
}
public class SimpleFactory {
public static Product factory(String productName) throws Exception{
if (productName.equals("Washer")) {
return new Washer();
}else if (productName.equals("Icebox")) {
return new Icebox();
}else if (productName.equals("AirCondition")) {
return new AirCondition();
}else {
throw new Exception("没有该产品");
}
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
try {
SimpleFactory.factory("Washer");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
洗衣机被制造了
文章标题:一起学Java(四十九)----- 工厂设计模式
文章链接:http://soscw.com/index.php/essay/41961.html