设计模式
久梦歌行
欢迎关注公众号:蜜蜂技术巢
展开
-
装饰设计模式初探
是为了增强某个对象的功能, package cn.itcast.wrapper; /** * * @author Administrator * */ public class Wrapper { public static void main(String[] args) { Person p = new Person(); //p.eat(); NewPerso原创 2014-10-12 11:34:15 · 612 阅读 · 0 评论 -
工厂模式学习
一、普通工厂 就是建立一个工厂类,对实现了同一接口的一些类进行实例的创建 例子: package cn.pattern.factory; public interface Shape { } package cn.pattern.factory; public class Square implements Shape{ } package cn.pattern.factor原创 2016-03-16 10:14:49 · 405 阅读 · 0 评论 -
观察者模式学习以及jdk实现
观察者模式存在观察者和被观察者,就像是订阅一样,比如一群读者订阅了短信通知,当短信有消息时,会调用订阅者自己的一个方法.使读者得到通知。 使用jdk自带的类模拟一个简单的观察者模式 package cn.test.pattern.observer; import java.util.Observable; import java.util.Observer; public原创 2016-03-18 22:57:58 · 436 阅读 · 0 评论 -
设计模式的六大原则学习
一、开闭原则(Open Close Principle) 就是说对扩展开放,对修改关闭。我们在对程序扩展时,不应去修改原有代码。 因为在修改原有代码时我们可能引入错误的代码,使我们可能不得不对原有的功能重新测试。 二、里氏替换原则(Liskov Substitution Principle)所有引用基类(父类)的地方必须能透明地使用其子类的对象。在软件中将一个基类对象替换成它的子类对象,程序将不转载 2016-03-14 22:45:53 · 273 阅读 · 0 评论 -
jdk动态代理和cglib动态代理
前言:动态代理作为代理模式的一种扩展形式,广泛应用于框架(尤其是基于AOP的框架)的设计与开发。 jdk动态代理下面将代码实例展示package cn.mode.proxy;/** * 接口类 * @author zzh * */ public interface People { void say(int i); } package cn.mode.proxy;/** * 实现类原创 2016-03-27 22:42:06 · 368 阅读 · 0 评论 -
java单例模式分析
单例模式(Singleton Pattern):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。 饿汉式public class Singleton { private static Singleton instance = new Singleton(); private Singleton ()原创 2016-04-24 11:56:36 · 351 阅读 · 0 评论