![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
文章平均质量分 90
神的孩子都在歌唱
csdn认证博客专家,本人还是小白,一起加油,微:chenyunzhiLBP
展开
-
结构设计模式 - 桥接设计模式 - JAVA
百度百科: 桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(interface)模式。说实话,一开始我没法理解百度百科这句话,所以我找了几个案例文章学习,那么,我就拿最经常看到的绘制不同颜色的形状这个案例去理解吧。以下是网上看到的案例注意:以下的案例是反例现在有一个需求,需要创建不同的图形,并且每个图形都有可能会有不同的颜色。我们可以利用继承的方式来设计类的关系:我们可以发现有很多的不同形状颜色的类。原创 2024-06-16 23:12:40 · 1014 阅读 · 0 评论 -
结构设计模式 - 代理设计模式 - JAVA
代理模式的定义:**为其他对象提供一种代理以控制对这个对象的访问。**在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式就是需要我们创建一个可以方便两端沟通的桥梁,然后我们可以在这两端之间做一下控制,比如房产中介,比如火车站买票代理点等等。那么这个定义就非常清晰,当我们想要对提供功能的进行受访控制时,可以使用代理设计模式。(1)抽象(Subject)角色:通过接口或抽象类声明真实角色实现的业务方法。(2)代理(Proxy)角色。原创 2024-05-31 23:03:01 · 1362 阅读 · 0 评论 -
结构设计模式 - 组合设计模式 - JAVA
由不同的对象组合成一个整体,这种类型的设计模式就叫做组合设计模式。仅当对象组应表现为单个对象时才应应用组合模式。组合设计模式可用于创建树状结构。Component:定义系统各层次对象的共有方法和属性,它可以是一个接口或一个抽象类,可以预先定义一些默认行为和属性。Leaf:定义合成中元素的行为。它是组合和实现基本对象的构建块。它没有对其他对象的引用。Composite: 它由各个子对象(leaf元素)组成,并在基本组件中实现操作。比如图表是一种由圆形、三角形等对象组成的结构。原创 2024-03-14 21:56:44 · 626 阅读 · 0 评论 -
结构设计模式 -适配器设计模式 -Java
适配器设计模式在现实生活中很常见,比如我最近白嫖了一个老旧的显示屏,不过他是VGA接口,可是我的笔记本支持HDMI**,没有支持VGA接口,那么就是要一个转接头将他们连接起来,这个转接头就是本文说的**适配器图片来源于网络适配器设计模式是一种结构型设计模式,它允许接口不兼容的对象能够相互合作。适配器模式通常用于将一个类的接口转换为客户端期望的另一个接口。这种模式通常用于解决接口不兼容的问题。目标(Target)接口:这是当前系统业务所期待的接口,它可以是抽象类或接口。原创 2024-03-13 23:17:42 · 1294 阅读 · 0 评论 -
创建型设计模式 - 建造者设计模式 - JAVA
以下是百度百科对建造者模式的解释 :文章地址建造者模式是设计模式的一种,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。解决问题当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。当构造过程必须允许被构造的对象有不同表示时。在这样的设计模式builder:为创建一个产品对象的各个部件指定抽象接口。:实现Builder的接口以构造和装配该产品的各个部件,定义并明确它所创建的表示,并提供一个检索产品的接口。Director:构造一个使用Builder接口的对象。原创 2024-02-28 23:00:53 · 1274 阅读 · 1 评论 -
创建型设计模式 - 原型设计模式 - JAVA
原型模式提供了一种机制,可以将原始对象复制到新对象,然后根据我们的需要进行修改。原型设计模式使用java克隆来复制对象。原型模式的克隆分为浅克隆和深克隆。深拷贝(Deep Copy)和浅拷贝(Shallow Copy)是指在进行对象复制时所产生的两种不同结果。深拷贝:创建一个新对象,新对象的属性和原来对象完全相同,对于非基本类型属性,仍指向原有属性所指向的对象的内存地址。浅拷贝:创建一个新对象,属性中引用的其他对象也会被克隆,不再指向原有对象地址。Java中的Object类中提供了clone()原创 2024-02-22 21:48:53 · 1085 阅读 · 0 评论 -
创建型设计模式 - 抽象工厂模式 - JAVA
看本片文章前,可以先看工厂设计模式,您会注意到我们有一个 Factory 类。该工厂类根据提供的输入返回不同的子类,工厂类使用 if-else 或 switch 语句来实现此目的。在抽象工厂模式中,我们摆脱了if-else 块,并为每个子类都有一个工厂类。然后是一个抽象工厂类,它将根据输入工厂类返回子类。并且工厂方法模式只生产一个等级的产品,而抽象工厂模式可生产多个等级的产品。大白话可能没办法讲清楚,接下来会通过代码解释,这样就能很容易掌握和理解工厂模式和抽象工厂模式之间的细微差别。电脑抽象类/**原创 2023-12-28 22:29:50 · 1325 阅读 · 0 评论 -
Java - 工厂设计模式
当我们有一个带有多个子类的超类,并且根据输入,我们需要返回其中一个子类时,就会使用工厂设计模式。该模式将类实例化的步骤从客户端程序转移到工厂类。简单理解就是一个东西有多种不同的实现方式,你选择不同方式,最后的结果就会不一样工厂设计模式提供了接口而不是实现的代码方法。工厂模式从客户端代码中删除了实际实现类的实例化。工厂模式使我们的代码更加健壮,耦合性更低并且易于扩展。例如,我们可以轻松地更改 PC 类的实现,因为客户端程序不知道这一点。工厂模式通过继承提供实现类和客户端类之间的抽象。原创 2023-12-24 21:35:18 · 1151 阅读 · 0 评论 -
JAVA - 单例设计模式
单例模式(Singleton Pattern的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。原创 2023-12-24 21:33:30 · 1082 阅读 · 0 评论