Java 设计模式
Java搬砖师
这个作者很懒,什么都没留下…
展开
-
Java面试经验第一季之设计模式——备忘录模式
备忘录模式就是在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。主要目的是保存一个对象的某个状态,以便在适当的时候恢复对象,个人觉得叫备份模式更形象些,通俗的讲下:假设有原始类A,A中有各种属性,A可以决定需要备份的属性,备忘录类B是用来存储A的一些内部状态,类C呢,就是一个用来存储备忘录的,且只能存储,不能修改等操作。...原创 2019-02-21 19:48:20 · 203 阅读 · 0 评论 -
Java面试经验第一季之设计模式——外观模式
外观模式又称门面模式,为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度,该模式中没有涉及到接口。说的简单点就是,将多个类或者子系统组合到一个Facade类中去,客户端访问Fac...原创 2019-02-22 13:44:13 · 195 阅读 · 0 评论 -
Java面试经验第一季之设计模式——桥接模式
桥接模式就是把事物和其具体实现分开,使他们可以各自独立的变化。桥接的用意是:将抽象化与实现化解耦,使得二者可以独立变化,像我们常用的JDBC桥DriverManager一样,JDBC进行连接数据库的时候,在各个数据库之间进行切换,基本不需要动太多的代码,甚至丝毫不用动,原因就是JDBC提供统一接口,每个数据库提供各自的实现,用一个叫做数据库驱动的程序来桥接就行了。数据库驱动说的简单...原创 2019-02-23 18:39:24 · 216 阅读 · 0 评论 -
Java面试经验第一季之设计模式——组合模式
组合模式的定:“将对象组合成树形结构以表示‘部分-整体’的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。”组合模式角色:1.Component 是组合中的对象声明接口,在适当的情况下,实现所有类共有接口的默认行为。声明一个接口用于访问和管理Component子部件。2.Leaf 在组合中表示叶子结点对象,叶子结点没有子结点。3.Composite 定义...原创 2019-02-23 18:39:31 · 238 阅读 · 0 评论 -
Java面试经验第一季之设计模式——代理模式
代理模式就是多一个代理类出来,替原对象进行一些操作,比如我们在租房子的时候回去找中介,为什么呢?因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,此处的代理就是这个意思。再如我们有的时候打官司,我们需要请律师,因为律师在法律方面有专长,可以替我们进行操作,表达我们的想法。代理模式代理模式的应用场景:如果已有的方法在使用的时候需要对原有的方法进行改进,此时有两种办...原创 2019-02-24 13:18:43 · 328 阅读 · 0 评论 -
Java面试经验第一季之设计模式——建造者模式
建造者模式:将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。在建造者模式里,有个指导者,由指导者来管理建造者,用户是与指导者联系的,指导者联系建造者最后得到产品。即建造模式可以强制实行一种分步骤进行的建造过程。建造模式是将复杂的内部创建封装在内部,对于外部调用的人来说,只需要传入建造者和建造工具,对于内部是如何建造成成品的,调用者无需关心。实用范围1、当...原创 2019-02-24 13:18:57 · 427 阅读 · 0 评论 -
Java面试经验第一季之设计模式——原型模式
原型模式(Prototype):用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。说白了,原型模式是为了解决一些不必要的对象创建过程。原型模式要求对象实现一个可以“克隆”自身的接口,这样就可以通过复制一个实例对象本身来创建一个新的实例。这样一来,通过原型实例创建新的对象,就不再需要关心这个实例本身的类型,只要实现了克隆自身的方法,就可以通过这个方法来获取新的对象,而无须再去通...转载 2019-02-22 13:44:25 · 229 阅读 · 0 评论 -
Java面试经验第一季之设计模式——单例模式
面试单例模式,主要作用是保证在Java程序中,某个类只有一个实例存在,在Java中一些管理器和控制器就被设计成单例模式,在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例。单例模式有很多好处,它能够避免实例对象的重复创建,不仅可以减少每次创建对象的时间开销,还可以节约内存空间;能够避免由于操作多个实例导致的逻辑错误。如果一个对象有可能贯穿整个应用程...原创 2019-02-21 19:53:28 · 183 阅读 · 0 评论 -
Java面试经验第一季之设计模式——工厂模式
说到工厂模式,可能很多人都觉得挺简单的,就是一个工厂类生产具体的产品对象,每个对象执行同一个行为。其实这种想法没错,只是这种说法只是最简单的一种工厂模式,就是俗称的简单工厂模式,其实工厂模式还有很多可供挖掘的东西,接下来我就详细的说说工厂模式。工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。在《Java与模式》一书中,把工厂分为三类:1...原创 2019-02-21 19:52:22 · 527 阅读 · 0 评论 -
Java面试经验第一季之设计模式——享元模式
享元模式:“享”就是分享之意,指一物被众人共享,而这也正是该模式的终旨所在。为了减少不会要额内存消耗,将多个对同一对象的访问集中起来,不必为每个访问者创建一个单独的对象,以此来降低内存的消耗。主要目的是实现对象的共享,即共享池,当系统中对象多的时候可以减少内存的开销,通常与工厂模式一起使用。提高程序效率和性能,会大大加快程序的运行速度。享元模式应用场景 享元模式由于其共享的特...原创 2019-02-23 13:44:15 · 180 阅读 · 0 评论