Java 设计者模式以及与Spring关系(三) 原型和适配器模式

发布时间:2024年01月20日

简介:

本文是个系列一次会出两个设计者模式作用,如果有关联就三个,除此外还会讲解在spring中作用。

23设计者模式以及重点模式

我们都知道设计者模式323种设计模式,标红是特别重要的设计者模式建议都会,而且熟读于心,标蓝是指其次重要建议也要明白。

(1)创建型模式:单例模式抽象工厂模式构建者模式工厂模式原型模式

(2)结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理模式

(3)行为型模式:访问者模式、模版方法模式命令模式、迭代器模式观察者模式、中介者模式、备忘录模式、解释器模式、状态模式、策略模式、职责链模式。

原型模式(Prototype):

原型模式是一种创建型设计模式,它允许对象在创建时复制现有对象(称为原型),而不是通过实例化新对象。这对于创建成本高的对象特别有用。

如何使用:
  1. 实现 Cloneable 接口:Java 提供了 Cloneable 接口,用于指示一个类的实例可以被克隆。
  2. 重写 clone 方法:在类中重写 Object 类的 clone 方法,用于创建对象副本。
public class Prototype implements Cloneable {
    private String field;

    public Prototype(String field) {
        this.field = field;
    }

    @Override
    public Prototype clone() throws CloneNotSupportedException {
        return (Prototype) super.clone();
    }
}

Spring 中的应用:

在 Spring 中,原型模式的一个应用是在定义 bean 作用域时。当一个 bean 的作用域被定义为 prototype 时,每次通过 Spring 容器请求这个 bean 时,都会创建一个新的实例,而不是复用相同的实例。

适配器模式(Adapter)

  • 目的:允许接口不兼容的对象能够相互合作。
  • 使用场景:整合第三方库、API,或是老系统的代码。

适配器模式是一种结构型设计模式,它允许不兼容的接口之间进行交互。通过创建一个中间层(适配器),使得原本由于接口不兼容而不能一起工作的类可以协同工作。

// 目标接口
public interface TargetInterface {
    void targetMethod();
}

// 被适配的类
public class Adaptee {
    public void specificMethod() {
        System.out.println("Specific method of Adaptee is called.");
    }
}

// 适配器类
public class Adapter implements TargetInterface {
    private Adaptee adaptee;

    public Adapter(Adaptee adaptee) {
        this.adaptee = adaptee;
    }

    @Override
    public void targetMethod() {
        adaptee.specificMethod();
    }
}

Spring框架的使用

看以上应用,就像@Autowired注入到本地使用其他实现类一样。Spring 中的许多模块使用适配器模式来确保跨不同模块的兼容性,例如 Spring MVC 中,将不同框架的 Controller 适配为 Spring 框架能理解的形式。

------------------------------------------与正文内容无关------------------------------------
如果觉的文章写对各位读者老爷们有帮助的话,麻烦点赞加关注呗!作者在这拜谢了!

如果你需要Java 、Python毕设、网页和系统设计,还有你是刚入职的新手需要度过试用期。联系方式微信:Romanticl99 网名:A乐神

文章来源:https://blog.csdn.net/weixin_43895362/article/details/135713605
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。