工厂模式

一、工厂模式  参考:1.Java工厂模式

工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。

二、实现了创建者和调用者的分离

  1. 实例化对象,用工厂方法代替new操作。
  2. 将选择实现类、创建对象统一管理和控制。从而将调用者跟我们的实现类解耦。

三、简单工厂(静态工厂)

 

 

 接口定义

1 public interface Car {
2     void run();
3 }

Car实现类

复制代码
 1 public class Audi implements Car {
 2     @Override
 3     public void run() {
 4         System.out.println("奥迪再跑...");
 5     }
 6 }
 7 public class Byd implements Car {
 8     @Override
 9     public void run() {
10         System.out.println("比亚迪再跑!");
11     }
12 }
复制代码

简单工厂类

复制代码
 1 public class CarFactory {
 2     public static  Car createCar(String type){
 3         if("奥迪".equals(type)){
 4             return new Audi();
 5         }else if("比亚迪".equals(type)){
 6             return new Byd();
 7         }else{
 8             return null;
 9         }
10     }
11 }
12 
13 public class CarFactory2 {
14     
15     public static  Car createAudi(){
16         return new Audi();
17     }
18     public static  Car createByd(){
19         return new Byd();
20     }
21 }
复制代码

测试

复制代码
1 public class Client02 {   //调用者
2     public static void main(String[] args) {
3         Car c1 =CarFactory.createCar("奥迪");
4         Car c2 = CarFactory.createCar("比亚迪");
5         
6         c1.run();
7         c2.run();
8     }
9 }
复制代码
小结:
1)简单工厂模式也叫静态工厂模式,就是工厂类一般是使用静态方法,通过接收的参数的不同来返回不同的对象实例。
2)对于增加新产品无能为力!不修改代码的话,是无法扩展的。

 

posted @   遇见神龙  阅读(56)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
历史上的今天:
2019-09-06 Eclipse之实用快捷键
2019-09-06 JVM内存模型、Java内存模型 和 Java对象模型
点击右上角即可分享
微信分享提示