Java - 设计模式


前言

在这里插入图片描述
   历过了大量的实践🔨,这些前人的设计数据、经验。被一位工程师👳 整理、总结归纳了出来。并写了一本建筑“模式语言”的书籍📘。
   同理,在软件领域,也需要前人的设计数据、经验。于是,也就出现了一本书“Design Patterns”📒。 设计模式(Design Patterns) 的来源就出自该书。
   💯设计模式 好处 多多:
    ◆ 是前辈总结的设计经验
    ◆ 让代码更容易理解、更容易维护
    ◆ 通过设计模式可以让代码更加稳定更适合工业化的发展
   🚴设计模式根据 其目的 可分为:
    ①创建型 (Creational)
    ②结构型(Structural)
    ③行为型(Behavioral)


一、第一部分:创建型

一、工厂模式

 1、工厂模式简介

   工厂模式用于隐藏创建对象的细节
   ◆ 一、工厂模式模式 细分
    ①、简单工厂
    ②、工厂方法
    ③、抽象工厂
   ◆ 二、、工厂模式核心: 工厂类 (Factory)

 2、简单工厂

   什么是简单工厂?👇👇👇
在这里插入图片描述
   同理在软件中 也会有类似 “买房” 这种相同的问题。
在这里插入图片描述

最简洁快速的代码演示 => 场景:去宠物店买个鹦鹉。该怎么挑选公、母呢?不会区分

   造个宠物接口 因为你买的最终是个 宠物嘛
public interface ChongWu {
// 一个宠物 可定有 一个性别的属性 (鳗鱼什么的除外)
    public String show();
}

	以下是所有 宠物:
	
public class YingWu1 implements ChongWu{
    @Override
    public String show() {
        return "鹦鹉1,我是男生";
    }
} 
public class YingWu2 implements ChongWu{
    @Override
    public String show() {
        return "鹦鹉2,我是女生";
    }
}
public class NotFind implements ChongWu{
    @Override
    public String show() {
        return "没有该性别的";
    }
}

	给商店 添加个 销售员
	
public class XiaoShou {
	//这个方法 返回的是个接口
    public ChongWu ShaiXuan(String str) { 
        ChongWu chongWu = null;
        if (str.equals("公鹦鹉")){
            return  new YingWu1();
        }else if (str.equals("母鹦鹉")){
            return new YingWu2();
        }else {
            return new NotFind();
        }
    }
}

	来顾客了 
	顾客 跟销售讲 要一条:公鹦鹉

public class GuKe {
    public static void main(String[] args) {
        XiaoShou xiaoShou = new XiaoShou();
        ChongWu chongWu = xiaoShou.ShaiXuan("公鹦鹉");
        String show = chongwu.show()
    }
}
......控制台就会输出 :鹦鹉1,我是男生

   ◆ 简单工厂 => 根据用户不同的需要,返回不同的类。类的创建过程 使用者 不需要关心。
   ◆作为上面的 销售员 就是充当了工厂的角色

   🏊如果 我的 同事给了我很多的类 其中还有一个 工厂类。那么在我使用这些 类 的时候,我不需要对每个 类都了解。我直接使用 工厂类!!! 需要什么功能类型的类,直接用工厂类去调。

 2、开发中的使用

    典型案例:  APP中 语言的切换 中文版/英文版/…等。针对于不同的地区有不同的语言。让用户体验更好。


总结

  设计模式有很多,目前先写工厂模式。后续慢慢增加。码字不易🐌,如果对您有所帮助不妨点个赞赞吧💖💖💖~

       我爱你 ~  我这一生有过两次重要的抉择,一次是高考,一次是送你回家的时候先迈哪只脚。🏃


                     🙏愿: 宇宙的尽头没有 设计模式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值