设计模式
leesire
这个作者很懒,什么都没留下…
展开
-
设计模式—六大原则—里氏代换原则
里氏代换原则(Liskow-Substitution-Principle)定义:子类对象能够替换父类对象,而程序逻辑不变。 里氏替换原则是确保继承正确使用的方法(继承使用的要求条件)。 Liskov替代原理(LSP)指出, 子类型必须可以替代其基本类型。违反此原理时,为了检查对象的特定类型,它往往导致大量额外的条件逻辑散布在整个应用程序中。随着应用程序的增长,...原创 2020-03-19 23:32:09 · 1764 阅读 · 0 评论 -
设计模式—六大原则—迪特米法则
在面向对象设计的世界里,有一个寻常却又常常为人所忽略的原则——“迪米特(Law of Demeter)”法则。这个原则认为,任何一个对象或者方法,它应该只能调用一下对象:• 该对象本身• 作为参数传进来的对象(也可以是该对象的字段)• 在方法内创建的对象这个原则用以指导正确的对象协作,分清楚哪些对象应该产生协作,哪些对象则对于该对象而言,又应该是无知的。本文所涉及的信息1、迪特米法则...原创 2020-03-17 23:21:49 · 591 阅读 · 0 评论 -
JDK中有关23种设计模式
下面是JDK中有关23个经典设计模式的示例,在stakeoverflow也有相应的讨论:http://stackoverflow.com/questions/1673841/examples-of-gof-design-patternsStructural(结构模式)Adapter:把一个接口或是类变成另外一种。java.util.Arrays#asList()原创 2017-06-26 10:59:43 · 954 阅读 · 1 评论 -
代理模式——动态代理(实例)
接口/** * * Filename: AbstractUserDAO.java * Description: 接口:定义代理类和真实类需要对外提供的服务 * Copyright: Copyright (c) 2016 All Rights Reserved. * Company: * * @author: Leesire * @version:原创 2017-06-19 16:53:54 · 563 阅读 · 0 评论 -
代理模式——动态代理(自己写一个)
思路难点:proxy类,它的作用就是帮我们产生代理类。将所有方法代码拼接成字符串。将生成代理类的代码拼接成字符串(包含所有方法拼接成的字符串)。将此字符串写入文件中、并使用JavaComplier对它进行编译。将编译好的文件load进内存供我们使用,并返回代理实例。Proxy代码:public class Proxy { pu原创 2017-06-19 16:48:58 · 989 阅读 · 0 评论 -
代理模式——动态代理
— 代理模式 —代理模式(Proxy Pattern)是对象的结构型模式,代理模式给某一个对象提供了一个代理对象,并由代理对象控制对原对象的引用。代理模式不会改变原来的接口和行为,只是转由代理干某件事,代理可以控制原来的目标,例如:代理商,代理商只会买东西,但并不会改变行为,不会制造东西。让我们通过下面的代码好好理解一下这句话。— 动态代理(白话解释) —动态【原创 2016-11-24 11:36:37 · 1382 阅读 · 0 评论 -
设计模式——静态代理
代理模式这里不过多解释:具体解释请看:设计模式——动态代理 代码接口:/** * * Filename: IDBQuery.java * Description: IDBQuery 是主题接口,定义代理类和真实类需要对外提供的服务,定义了实现数据库查询的公共方法 request() 函数 * Copyright: Copyrig原创 2017-06-19 16:23:21 · 481 阅读 · 0 评论 -
设计模式——享元模式
—摘要—面向对象技术可以很好地解决一些灵活性或可扩展性问题。享元模式主要应用于创建过多的对象或者类似的情况,但在很多情况下需要在系统中增加类和对象的个数,当对象数量太多时,将导致运行代价过高,对服务器带来了相当大的压力,性能出现明显的下降。享元模式通过共享技术实现相同或相似对象的重用提高系统资源的利用率。本文首先阐述了享元模式要解决的问题和解决问题的理念,然后从实现角度重点说明了该模式的本质,原创 2017-02-14 18:22:56 · 462 阅读 · 0 评论 -
面向对象编程范式
面向对象编程范式 (Object Orientation paradigm )很多人在学习对象技术时,缺乏明确的起点和清晰的学习思路。学习完《面向对象编程》、《Java程序设计》等课程后,仍然不能够回答“什么是面向对象”。《编程导论(Java)》的一个基本目标,就是给面向对象(Object Orientation、OO)或面向对象编程范式一个简洁明快的定义。然而转载 2017-02-06 14:04:47 · 772 阅读 · 0 评论 -
面向对象的设计原则
— 单一职责原则 ( Single Responsibility Principle )—SRP是正确设计类的指导原则。单一职责原则的英文名称是Single Responsibility Principle,简称是SRP,简单来说一个类只做一件事。这个设计原则备受争议却又及其重要的原则。只要你想和别人争执、怄气或者是吵架,这个原则是屡试不爽的。因为单一职责的划分界限并不是如马路原创 2017-02-06 13:58:49 · 399 阅读 · 0 评论 -
设计模式——Builder模式
设计源于生活。—生活来源—盖房子:简单地盖房子,角色分配,工人,工人分为工头、大工、小工、瓦工等等。复杂的盖房子:设计师、承包商、工头、工人分为工头、大工、小工、瓦工等等。复杂工程一般比简单工程多了个设计师的职位。就像小的公司可能没有架构师的职位一样。—Builder模式—(1) 意图:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。(2) 适原创 2017-01-08 16:13:28 · 610 阅读 · 0 评论 -
接口-工厂模式-代理模式
—程序1:简单的接口功能—123456789101112131415161718192021222324252627282930原创 2016-11-30 20:36:03 · 800 阅读 · 0 评论 -
java设计模式——单例模式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。——百度百科 单例模式,核心便是整个项目中的某一个类只有一个实例。 一个实例意味着什么?? 在原创 2015-05-18 11:10:43 · 736 阅读 · 0 评论