09 2017 档案
设计模式之Prototype模式
摘要:通常我们会使用new 类名()的方法会去生成一个新的实例,但在开发过程中,有时候也会有“在不指定类名的前提下生成实例”的需求,那样,就只能根据现有实例来生成新的实例。 有三种情况,不能根据类来生成实例: 对象种类繁多,无法将它们整合到一个类中时; 难以根据类生成实例的时; 想解耦框架与生成的实例时。 不根据类来生成实例,而是根据实例来生成实例,就是Prototype模式,又叫原型模式。 实例程序... 阅读全文
posted @ 2017-09-30 07:12 博客王大锤 阅读(204) 评论(0) 推荐(0)
设计模式之Singleton模式
摘要:当程序运行时,有时会希望在程序中,只能存在一个实例,为了达到目的,所以设计了Singleton模式,即单例模式。 单例模式的特征: 想确保任何情况下只存在一个实例 想在程序上表现出只存在一个实例 示例程序: Singleton单例类 package site.wangxin520.gof.singleton; /** * 单例模式获取单例对象的类 * @author wangXgnaw ... 阅读全文
posted @ 2017-09-28 20:31 博客王大锤 阅读(290) 评论(0) 推荐(0)
设计模式之Factory工厂模式
摘要:在上一章,模板模式中,我们在父类规定处理的流程,在子类中实现具体的处理。如果我们将该模式用于生成实例,便演变成了Factory模式,即工厂模式。 在Factory模式中,父类决定实例的生成方式,但并不决定所要生成的具体的类,具体处理全部交给子类进行。 设计实例则是模仿Spring框架进行的操作,模拟制作身份证。为了模拟Spring框架解耦,我们采用分包的方法,即生成实例的框架放在framework... 阅读全文
posted @ 2017-09-28 07:10 博客王大锤 阅读(253) 评论(0) 推荐(0)
设计模式之——Template模板模式
摘要:Template模式又叫模板模式,是在父类中定义处理流程的框架,在子类中实现具体处理逻辑的模式。当父类的模板方法被调用时程序行为也会不同,但是,不论子类的具体实现如何,处理的流程都会按照父类中所定义的那样进行。 示例程序: 将一段字符串和字符循环显示五次的程序: AbstractDisplay 父类抽象的模板,里面定义了处理流程,但是没有具体把实现写出来 package site.wangxin... 阅读全文
posted @ 2017-09-27 06:24 博客王大锤 阅读(196) 评论(0) 推荐(0)
Adapter适配器模式
摘要:Adapter模式(适配器模式)也被称为Wrapper模式(包装模式);个人理解就是,新的接口,采用旧的方法实现。 适配器模式具有两种实现方式: 类适配器模式(使用继承旧方法的类,来实现新接口的调用); 对象适配器模式(使用委托的方法,将旧对象编程新接口实现类的一个属性,进行调用)。 实例程序1: Banner类,被适配的类,即旧方法实现类 package site.wangxin520.go... 阅读全文
posted @ 2017-09-26 22:41 博客王大锤 阅读(203) 评论(0) 推荐(0)
设计模式之——迭代器模式
摘要:设计模式是开发者前辈们给我们后背的一个经验总结。有效的使用设计模式,能够帮助我们编写可复用的类。所谓“可复用”,就是指将类实现为一个组件,当一个组件发生改变时,不需要对其他组件进行修改,或者只需要修改很小一部分即可。 迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示。 下面是一段实现了迭代器模式的示例程序,这段程序作用是,将书BOOK放到书架... 阅读全文
posted @ 2017-09-25 22:39 博客王大锤 阅读(229) 评论(0) 推荐(0)