设计模式
文章平均质量分 73
盼来一朵云
小小溪流可以变成大海
展开
-
序列化的过程后的对象还是单例吗?
返回值会调用readOrdinaryObject方法,readOrdinaryObject方法中的三目允许算符判断了对象是不是可实例化的,如果是可实例化的会通过newInstance()方法反射实例化一个新的对象,所以。,通过反射调用单例类的LazySingleTon的readResolve方法,即我们刚才加的readResolve方法,并将获得的对象返回,所以序列化前后对象相同!首先,序列化过程中的单例模式是会被破坏的,因为序列化出来的对象与原单例对象不一样了。那么为什么序列化出来的对象就不是单例的呢?原创 2024-09-15 09:28:17 · 302 阅读 · 0 评论 -
设计模式-装饰者模式
装饰者模式:动态的将新功能附加到对象,上。在对象功能扩展方面,它比继承更有弹性,装饰者模式也体现了开闭原则(ocp)这里提到的动态的将新功能附加到对象和ocp原则,在后面的应用实例上会以代码的形式体现,请同学们注意体会。原创 2024-04-20 13:18:22 · 742 阅读 · 0 评论 -
设计模式-桥接模式
桥接模式(Bridge模式)是指:将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变。是一种结构型设计模式Bridge模式基于类的最小设计原则,通过使用封装、聚合及继承等行为让不同的类承担不同的职责。它的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。原创 2024-04-20 13:17:39 · 1205 阅读 · 0 评论 -
设计模式-适配器模式
适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,主的目的是兼容性,让原本因接口不匹配不能一起工作的两个类可以协同工作。其别名为包装器(Wrapper)适配器模式属于结构型模式类适配器模式、对象适配器模式、接口适配器模式基本介绍: Adapter类, 通过继承src类,实现dst类接口,完成src->dst的适配。基本思路和类的适配器模式相同,只是将Adapter类作修改,不是继承src类, 而是持有src类的实例,以解决兼容性的问题。原创 2024-04-16 15:57:59 · 753 阅读 · 0 评论 -
设计模式-建造者模式
建造者模式()又叫生成器模式,是一种对象构建模式。它可将复杂对象的建造过程抽象出来(抽象类别),使这个抽象过程的不同实现方法可以构造出不同表现(属性)的对象。建造者模式是一步一步创建一个复杂的对象, 它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。原创 2024-04-16 15:57:06 · 970 阅读 · 0 评论 -
设计模式-原型模式
原型模式(Prototype模式)是指:用原型实例指定创建对象的种类,并且通过拷贝这些原型,创建新的对象原型模式是一种创建型设计模式,允许一个对象再创建另外一个可定制的对象,无需知道如何创建的细节工作原理是:通过将一个原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建,即对象.clone()形象的理解:孙大圣拔出猴毛,变出其它孙大圣。原创 2024-04-15 19:16:04 · 602 阅读 · 0 评论 -
设计模式-工厂模式
简单工厂模式是属于创建型模式,是工厂模式的一种。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式简单工厂模式:定义了一个创建对象的类,由这个类来封装实例化对象的行为(代码)在软件开发中,当我们会用到大量的创建某种、某类或者某批对象时,就会使用到工厂模式.工厂方法模式设计方案:将披萨项目的实例化功能抽象成抽象方法,在不同的口味点餐子类中具体实现。工厂方法模式:定义了一个创建对象的抽象方法,由子类决定要实例化的类。原创 2024-04-15 19:14:48 · 1194 阅读 · 0 评论 -
设计模式-开闭原则和迪米特法则
开闭原则(Open Closed Principle) 是编程中最基础、最重要的设计原则一个软件实体如类,模块和函数应该对扩展开放(对提供方)对修改关闭(对使用方)。用抽象构建框架,用实现扩展细节。当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。编程中遵循其它原则,以及使用设计模式的目的就是遵循开闭原则。一个对象应该对其他对象保持最少的了解类与类关系越密切,耦合度越大迪米特法则(Demeter Principle)又叫最少知道原则。原创 2024-04-12 13:19:59 · 602 阅读 · 0 评论 -
设计模式-单例模式
所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类.只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法(静态方法)。比如Hibernate的SessionFactory,它充当数据存储源的代理,并负责创建Session对象。SessionFactory并不是轻量级的,一般情况下,一个项目通常只需要一个SessionFactory就够,这是就会使用到单例模式。原创 2024-04-12 13:21:22 · 1354 阅读 · 0 评论 -
设计模式-单一职责原则
对类来说的,即一个类应该只负责一项职责。如类A负责两个不同的职责,职责1,职责2.当职责1需求变更而改变A时,可能造成职责2执行错误,所以需要将类A的粒度分解为A1,A2。原创 2024-04-09 15:58:07 · 659 阅读 · 0 评论 -
设计模式-依赖倒置原则
高层模块不应该依赖低层模块,二者都应该依赖其抽象抽象不应该依赖细节,细节应该依赖抽象依赖倒转(倒置)的中心思想是面向接口编程依赖倒转原则是基于这样的设计理念:相对于细节的多变性,抽象的东西要稳定的多。以抽象为基础搭建的架构比以细节为基础的架构要稳定的多。在java中,抽象指的是接口或抽象类,细节就是具体的实现类使用接口或抽象类的目的是制定好规范,而不涉及任何具体的操作,把展现细节的任务交给他们的实现类去完成。原创 2024-04-10 18:20:25 · 578 阅读 · 0 评论 -
设计模式-接口隔离原则
客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上先看一张图:类A通过接口Interface1 依赖类B,类C通过接口Interface1 依赖类D,如果接口Interface1对于类A和类C来说不是最小接口,那么类B和类D必须去实现他们不需要的方法。按隔离原则应当这样处理:将接口Interface1拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。原创 2024-04-09 16:22:44 · 747 阅读 · 0 评论 -
设计模式-里氏替换原则
【代码】设计模式-里氏替换原则。原创 2024-04-10 18:21:01 · 625 阅读 · 0 评论