您现在的位置是:主页 > news > 烟台企业网站怎么优化/百度人工服务24小时
烟台企业网站怎么优化/百度人工服务24小时
admin2025/5/10 21:56:14【news】
简介烟台企业网站怎么优化,百度人工服务24小时,东莞淘宝网站建设,看视频的app有哪些工厂方法模式 一个抽象的父类定义公共接口,设计工厂的生产规范,不同的子类实现工厂接口,生成具体的对象,每个生产的对象也是父类定义对象的具体实现。 这样做的目的是将类的实例化操作延迟到子类中完成,按照通用父类引…
烟台企业网站怎么优化,百度人工服务24小时,东莞淘宝网站建设,看视频的app有哪些工厂方法模式
一个抽象的父类定义公共接口,设计工厂的生产规范,不同的子类实现工厂接口,生成具体的对象,每个生产的对象也是父类定义对象的具体实现。 这样做的目的是将类的实例化操作延迟到子类中完成,按照通用父类引…
工厂方法模式
一个抽象的父类定义公共接口,设计工厂的生产规范,不同的子类实现工厂接口,生成具体的对象,每个生产的对象也是父类定义对象的具体实现。
这样做的目的是将类的实例化操作延迟到子类中完成,按照通用父类引用,运行时决定具体的使用过程。
工厂方法结构图:
编者按:
1、简单工厂模式的最大优点在于工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖。只需告知工厂要什么;
2、工厂方法模式实现,在于工厂类中定义了产品的实现标准,客户端的使用,只需按需动态化的选择对应的工厂,不需要考虑具体的产品细节,选定的工厂自主的去通用实现具体产品,细节由工厂来完成,去除客户端和具体产品的依赖。只需选择对应的工厂。
3、两者比较,简单工厂选择产品, 工厂方法选择产品工厂。进步之处在于,同类标准新产品的实现,不需要在原来的工厂类改造,只需实现父类标准,产生新的产品,开闭原则。
代码实现用例图:
具体代码实现:
抽象工厂:
public interface VehicleFactory {Vehicle createVehicle();
}
抽象产品:
public interface Vehicle {void run();
}
汽车工厂:
public class CarFactory implements VehicleFactory {@Overridepublic Vehicle createVehicle() {return new Car();}
}
飞机工厂:
public class AirplaneFactory implements VehicleFactory {@Overridepublic Vehicle createVehicle() {return new Airplane();}
}
汽车产品类:
public class Car implements Vehicle {@Overridepublic void run() {System.out.println("乘坐汽车出行");}
}
飞机产品类:
public class Airplane implements Vehicle {@Overridepublic void run() {System.out.println("乘坐飞机出行");}
}
客户端调用:
public class Main {public static void main(String[] args) {Vehicle vehicle;VehicleFactory vehicleFactory;vehicleFactory = new AirplaneFactory();vehicle = vehicleFactory.createVehicle();vehicle.run();vehicleFactory = new CarFactory();vehicle = vehicleFactory.createVehicle();vehicle.run();}
}
实现结果:
乘坐飞机出行
乘坐汽车出行
关注公众号,获取更多资源。