- 博客(17)
- 收藏
- 关注
原创 设计模式——迭代器模式
迭代器模式(Iterator Pattern)定义:提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。英文定义:“Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation.”...
2022-06-08 01:35:01 2370 2
原创 设计模式——代理模式
代理模式(Proxy Pattern)定义:给某一个对象提供一个代理,并由代理对象控制对原对象对引用。代理模式对英文叫做Proxy或Surrogate,它是一种对象结构型模式。英文定义:“Provide a surrogate or placeholder for another object to control access to it.”...
2022-06-06 17:43:44 695
原创 设计模式——命令模式
命令模式(Command Pattern)定义:将一个请求封装为一个对象,从而使我们可用不同的请求客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式。...
2022-06-05 12:05:34 892 1
原创 设计模式——外观模式
外观模式定义(FacadePattern)定义:为子系统中的一组接口提供一个统一入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。在外观模式中,外部与一个子系统的通信可以通过一个统一的外观对象进行。外观模式又称为“门面模式”,它是一种对象结构型模式。...
2022-06-05 09:17:43 1518
原创 设计模式——装饰模式
装饰模式可以在不改变一个对象本身的基础上上给对象增加额外的新行为,在现实生活中,这种情况比比皆是,如一张照片,可以不改变照片本身,给它增加一个相框,使得它具有防潮的功能,而且用户可以根据需要给它增加不同类型的相框,甚至可以在一个小的相框的外面再套一个大相框。在软件外发中,类似给照片加相框的情况也随处可见。如可以给一个图形界面构件增加边框、滚动等新的特性,给一个数据加密类增加更复杂的加密算法等。
2022-05-07 08:00:00 1292 1
原创 设计模式——适配器模式
适配器模式1.适配器模式动机及定义1.1模式动机在现实生活中,经常存在一些不兼容的事物。如某电器的工作电压与家庭交流电电压不一致,网络速度与计算机处理速度不一致,某硬件设备提供的接口与计算机支持的接口不一致等。在这种情况下,我们可以通过一个新的设备使原本不兼容的事物可以一起工作,这个新的设备称为适配器。在软件开发中,也存在一些不一致的情况,同样,也可以通过一种称为适配器模式的设计模式来解决这类问题。在适配器模式中可以定义一个包装类,包装不兼容接口的对象,这个包装类指的就是适配器(Adapte
2022-05-05 22:13:19 1287
原创 设计模式——组合模式
组合模式 组合模式动机及定义 1.1模式动机在面向对象系统中,我们常常会遇到一类具有“容器”特征对对象——即它们在充当普通对象对同时,又可作为其他对象对容器,这些对象成为容器对象,而那些只能充当普通对象的对象则称为叶子对象。在容器对象中即可以包含叶子对象,又可以包含容器对象,为了更好地解决容器对象和叶子对象之间的关系,使之操作更加简单,我们需要学习一种新的结构设计模式,即组合模式。组合模式实际要解决的问题是:对整体与个体的操作应一致,类似对文件夹与文件对操作。...
2022-04-28 22:42:28 1771
原创 设计模式——抽象工厂模式
1.抽象工厂模式动机在工厂方法模式中具体工厂负责生产具体的产品,每一个具体工厂对应一种具体产品,工厂方法也具有唯一性,一般情况下,一个具体工厂中只有一个工厂方法或者一组重载的工厂方法。但是有时候我们需要一个工厂可以提供多个产品对象,而不是单一的产品对象,如一个电器设备工厂,它可以生产电视机、电冰箱、空调等设备,而不只是生成某种类型的电器。因此我们引入了一个新的设计模式:抽象工厂模式。抽象工厂模式定义:抽象工厂模式是工厂方法模式的泛化版,工厂方法...
2022-04-19 08:00:00 1594
原创 SpringBoot集成Swagger
1.新建一个SpringBoot-web项目2.导入相关依赖swagger2<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <..
2022-04-08 16:33:33 95
原创 JSR303数据校验:@Email注解报红
首先查看springboot版本,2.3.0版本后在pom.xml 写入以下依赖 <dependency> <groupId>org.hibernate.validator</groupId> <artifactId>hibernate-validator</artifactId> <version>6.0.17.Final</versio
2022-03-29 16:51:22 464
原创 Java中的深拷贝
简单的说,深拷贝对引用数据类型的成员变量的对象图中所有的对象都开辟了内存空间;而浅拷贝只是传递地址指向,新的对象并没有对引用数据类型创建内存空间。
2022-03-20 01:03:15 10953
转载 java中的浅拷贝
Java中对象拷贝(Object Copy)指的是将一个对象的所有属性(成员变量)拷贝到另一个有着相同类类型的对象中去。例如:对象A和对象B都属于类S,具有属性a和b。那么对对象A进行拷贝操作赋值给对象B就是: B.b = A.a;B.b = A.a;Java中的对象拷贝主要分为:浅拷贝(Shallow Copy)、深拷贝(Deep Copy)浅拷贝:对于数据类型是基本数据类型的成员变量,浅拷贝会直接进行值传递,也就是将该属性复制一份给新的对象。因为是两份不同的数据,所以对其中一
2022-03-19 17:55:41 6084
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人