![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模式
yuhui66666688gfbfdy
这个作者很懒,什么都没留下…
展开
-
单例模式
public class Singleton { private volatile static Singleton singleton; private Singleton(){ } public static Singleton getInstance(){ // 双重检查加锁原创 2017-04-17 15:19:43 · 192 阅读 · 0 评论 -
装饰者模式
//原理:1,基于基本类;2,在基本类的基础上抽象出,需要增加的方法接口;3,用一个装饰者再集成这些接口;4,在具体的应用中,继承这个类,实现它的增加方法,(将基类获得,在继承的增加的方法中先调用此基类的方法,然后,加入自己需要新加的方法,基类中的方法可以选用),这就是装饰者的原理。 public abstract class TagComponent { pu原创 2017-04-17 15:20:09 · 175 阅读 · 0 评论 -
策略模式
//策略模式的本质:少用继承,多用组合 //把基本的共有的特性放到一个基类中,其他的有变动的特性,抽象成接口,并对应应用实现,对于后面要用到某个特殊类可以,用基类+特殊接口类的一个组合。 通过继承在父类中提供行为,会导致以下缺点: a. 代码在多个子类中重复; b. 运行时的行为不容易改变; c. 改变会牵一发动全身,造成部分子类型不想要的改变; 好啦,还是原创 2017-04-17 15:20:16 · 204 阅读 · 0 评论 -
单例模式
public class Singleton { private volatile static Singleton singleton; private Singleton(){ } public static Singleton getInstance(){ // 双重检查...原创 2015-01-16 13:43:54 · 113 阅读 · 0 评论 -
生产者与消费者
//notify();唤醒将对象锁让给我用的对象所在线程,当然用完了就通知对方收回了 //wait();将本对象所在的线程放置进入等待,同时释放次对象上的同步锁synchronized //此对象在其他线程中可以用,就是wait别人用完了还给我啊 //此两种方法都是对对方 // synchronized(b){...};的意思是定义一个同步块,使用b作为资源锁。b.wait();//的意...原创 2015-01-16 16:03:18 · 90 阅读 · 0 评论 -
工厂模式
//工厂模式就类似于接口,不同的产品有一个统一产品的接口,不同的工厂有一个统一的工厂接口 //面向接口编程的思想 public interface Cycle { public void run(); } public class UniCycle implements Cycle { @Override public...原创 2015-01-19 11:29:45 · 124 阅读 · 0 评论 -
装饰者模式
//原理:1,基于基本类;2,在基本类的基础上抽象出,需要增加的方法接口;3,用一个装饰者再集成这些接口;4,在具体的应用中,继承这个类,实现它的增加方法,(将基类获得,在继承的增加的方法中先调用此基类的方法,然后,加入自己需要新加的方法,基类中的方法可以选用),这就是装饰者的原理。 public abstract class TagComponent { ...原创 2015-01-19 15:31:54 · 82 阅读 · 0 评论 -
策略模式
//策略模式的本质:少用继承,多用组合 //把基本的共有的特性放到一个基类中,其他的有变动的特性,抽象成接口,并对应应用实现,对于后面要用到某个特殊类可以,用基类+特殊接口类的一个组合。 通过继承在父类中提供行为,会导致以下缺点: a. 代码在多个子类中重复; b. 运行时的行为不容易改变; c. 改变会牵一发动全身,造成部分子类型不想要的改变; ...原创 2015-01-19 17:46:26 · 156 阅读 · 0 评论 -
彻底理解Java的Future模式
不同的jdk版本实现的方式不一样 1.6 sychonized 1.8采用状态的方式,这里对比这两种实现方式,和future的使用场景 先上一个场景:假如你突然想做饭,但是没有厨具,也没有食材。网上购买厨具比较方便,食材去超市买更放心。 实现分析:在快递员送厨具的期间,我们肯定不会闲着,可以去超市买食材。所以,在主线程里面另起一个子线程去网购厨具。 但是,子线程...原创 2018-03-05 16:08:56 · 108 阅读 · 0 评论