![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
lostinai
这个作者很懒,什么都没留下…
展开
-
23种设计模式的索引
设计模式是很多前人留下的经验总结,这些模式都是很典型的也是很有代表意义的。因此掌握好设计模式是提高个人技术能力的捷径。设计模式要全部掌握,必须进行不断的总结和实现,傻蛋最近总结了一下23种(+简单工厂)设计模式的索引,以方便大家明白各种模式都有什么作用,在遇到问题的时候能够迅速地找到解决方案,同时加以使用,以便能够更快的掌握。 1.Simple Factory(简单工厂)::提供一个创建对象实例转载 2012-07-21 10:11:26 · 1249 阅读 · 0 评论 -
代理模式
静态代理,代理类(壳子)和被代理类(真实的类)定义公共的接口,将被代理类(真实的类)的引用传入代理类(壳子),通过代理类(壳子)来调用被代理类(真实的类)的真实方法。动态代理则需要实现InvocationHandler接口,通过Proxy.newProxyInstance的方法来创建代理对象。 /** * 定义代理类和被代理类的公共接口 * @author zhangej * */ pu原创 2016-04-22 17:36:05 · 332 阅读 · 0 评论 -
观察者模式
有时被称作发布/订阅模式,观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。通常包含观察者接口、观察者实现类、主题接口、主题实现类,然后将要通知的观察者的引用注册到主题中,当主题有通知时,所有注册的观察者类可以收到更新通知。 /** * 观察者的接口 * @author zhangej原创 2016-04-14 14:35:48 · 634 阅读 · 0 评论 -
原型模式
为了快速的创建相似的对象。原型模式是通过拷贝自身来创建新的对象,使用原型模式创建对象比直接new一个对象在性能上要好的多,,因为Object类的clone方法是一个本地方法,它直接操作内存中的二进制流,特别是复制大对象时,性能的差别非常明显。。比如需要在一个循环体内创建对象,假如对象创建过程比较复杂或者循环次数很多的话,使用原型模式不但可以简化创建过程,而且可以使系统的整体性能提高很多。使用原型模原创 2016-04-25 18:06:39 · 416 阅读 · 0 评论 -
构建者模式
对于一个复杂的产品创建需要很多步骤或者方法,为了简化对复杂产品的创建,对外隐藏了细节,通常我们可以将这个产品的构建步骤抽出一个接口,由一个构建者类来实现这个接口,再创建一个导演类或者包装类将这个构建者的引用传入,然后根据复杂的步骤来通过实现一个包装后的简单的方法(如create()方法)来创建这个复杂的产品,最后通过构建者类来获得创建的产品。 /** * 将要创建的复杂的产品 *原创 2016-04-12 15:56:58 · 556 阅读 · 0 评论 -
策略模式
对于一种问题有多种解法,我们不是使用的if else而是把这些解法抽出了一个公共的接口,使用不同的策略类来实现这个公共的接口,再包装上一个策略类的容器,这个容器对外提供一个统一的方法来给外界使用。 /** * 策略模式公共接口 * */ public interface StrategyInterface { public void method(); } /** * 策略实现原创 2016-04-11 15:18:11 · 360 阅读 · 0 评论 -
java 单例模式的好处
单例模式的实现方式:懒汉单例类和饿汉单例类 单例模式的实现有多种方法,常见的就有懒汉式单例类和饿汉式单例类。我们前面介绍的实现方法就属于懒汉式单例类。 懒汉式单例类 对于懒汉模式,我们可以这样理解:该单例类非常懒,只有在自身需要的时候才会行动,从来不知道及早做好准备。它在需要对象的时候,才判断是否已有对象,如果没有就立即创建一个对象,然后返回,如果已有对象就不再创建,立即返回。 懒转载 2015-12-11 21:22:35 · 446 阅读 · 0 评论 -
Java开发中的23种设计模式详解(转)
设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化转载 2015-11-24 10:02:56 · 486 阅读 · 0 评论 -
Java设计模式
http://blog.csdn.net/cdl2008sky/article/details/3335385 软件设计的 开-闭原则: 开闭原则是:一个系统要对扩展开放,而对修改关闭。这里的所指的意思就是在不修改以前已经写好的代码或者尽量不改的情况下来扩展系统的功能。 由于从抽象层导出一个或多个新的具体类可以改变系统的行为,因此系统的设计对扩展是开放的,这就满足了开闭原则的第一条。转载 2015-11-24 10:00:13 · 3340 阅读 · 0 评论 -
单例设计模式的N中Java实现方法
转载请注明出处:http://blog.csdn.net/ns_code/article/details/17359719 特点 单例模式的特点: 1、只能有一个实例; 2、必须自己创建自己的一个实例; 3、必须给所有其他对象提供这一实例。 饿汉式单例模式 也称为预先加载法,实现方式如下: [java] view pl转载 2014-07-14 09:57:52 · 627 阅读 · 0 评论 -
Android 设计模式
http://blog.csdn.net/banketree/article/details/24985607转载 2014-07-24 17:13:22 · 529 阅读 · 0 评论 -
追MM与Java的23种设计模式
1、FACTORY—追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如转载 2012-11-25 21:54:07 · 403 阅读 · 0 评论 -
正确地写出单例模式
懒汉式,线程不安全 当被问到要实现一个单例模式时,很多人的第一反应是写出如下的代码,包括教科书上也是这样教我们的。 public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance(转载 2016-05-31 15:28:31 · 371 阅读 · 0 评论