自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 观察者模式

相信每个人在高中的时候在自习课的时候都有偷偷的玩过手机,而且 绝大部分的高中都不让学生带手机,更不用说上课玩了。所以每个人在玩的时候总是找同桌或者附近的同学帮忙看着 如果老师来了 就提醒自己一下。个人感觉这个场景跟观察者模式很像。接下来我们用java代码 简单的实现一下。首先我们将 老师来了 同学们要做的动作抽象为一个接口public interface IAction { pub

2017-12-05 22:16:29 133

原创 外观模式

假如我们一个人开始创业,因为刚刚开始创业,公司只有自己一个人。所以 公司人员的招聘,入职 检查,入职各种资料的办理。我们接下来用java简单实现一下public class ZhaoPinClass { public void zhaopin() { System.out.println("招聘"); }}public class MianShiClass { public

2017-12-04 22:18:22 95

原创 迭代器模式

在我们上学的时候,有时候老师为了锻炼我们的口语表达能力,通常会每天安排一个人上讲台前面给我们讲一个小故事。假如老师一开始规定好同学上台的顺序是从门口这一排开始,然后从左到右。假如现在是新的一周,老师想知道今天上台讲故事的人是谁,老师就从之前安排好的第一个同学开始问,问他上台讲过了没有,一直在 问了 10多个同学后,才找到第一个还没有讲的人 也就是今天要讲的那个同学。如果每次都这样来确定今天上台

2017-11-28 23:13:02 106

原创 中介者模式

中介者模式有些情况下我们可能需要 在两种语言之间进行信息的交互,例如 在java 和 python 之间进行信息的传递,但是如果二者直接进行链接的话 不仅很难实现而且效率还低,但是如果我们使用redis或者mysql 作为消息的中间件,将消息保存在中间件中,然后另一个消息在取出来,这样就很简单的实现了我们的功能。好处就是 操作简单,效率也会很高,而且可扩展性也很高。例如现在我们还要加一个c

2017-11-27 22:38:32 119

原创 简单工厂模式

简单工厂模式 个人理解就是 我们在需要一个新的对象的时候 不需要我们自己去调用new 这个关键字 而是调用类中的 工厂方法来给我们一个对象。先写一个简单的类public class Wanju { public String name; //玩具名字 public int price ;//玩具价格 public int wangjuSize ;//玩具的大小 public i

2017-11-24 23:24:19 98

原创 原型模式

原型模式   最近几天吃鸡这种游戏很火,火到连小米都加入进来,而提到小米,不得不提他那种开创的独特的营销模式,但是最近几年消费者对其这种饥饿营销产生了一些匹配,在这种背景下,小米也开始从线上转入线下,开始在各个地区创建小米之家,今天写对原型模式的一些理解 就从小米之家的发展来切入。首先声明一个类 毕竟java是面向对象编程的 所以首先建一个小米之家的类public class Xi

2017-11-23 23:12:50 122

原创 LinkedBlockingQueue

LinkedBlockingQueue是jdk1.5中新增加的一个高并发类 今天主要看了下源码中的put方法 ,put方法在调用的时如果 队列已满则进行等待,直至有新的空间。其中队列的最大长度可以有以下几种设置方式1.调用LinkedBlockingQueue的构造函数 设置最大的队列长度 public LinkedBlockingQueue(int capacity)

2017-11-22 23:15:51 166

原创 备忘录模式

备忘录模式常用来在那些对象经常回滚到以前的某个状态的时候使用,在平常情况下,我们为了能够将某个能修改的对象回滚到以前的某个状态的时候,一般会新new一个对象,然后将需要保存对象的内部属性转移到新new的这个对象当中,例如 我要保存游戏角色的当前血量 和 当前的位置。class Player {int hp;int position_x;int Position_y;String

2017-11-22 23:06:46 95

原创 装饰器

装饰器模式 是用来给一个类的某个方法添加额外功能的,一开始以为 spring的Aop 是属于装饰器模式,然后在网上查了一下才知道 aop是属于代理模式,其主要区别是 装饰类和被装饰类是否继承了同一个父类,并且装饰的那个方法是父类当中声明的方法。下面写一个自己感觉  不用装饰器模式的例子 和用装饰器模式的例子interface Father{abstract  void doSomethin

2017-11-21 22:59:00 114

原创 模板模式

模板模式主要是发生在继承当中,父类方法中调用了子类实现或者重写的方法,这样的好处是可以实现良好的代码架构 和 减少代码的冗余。比如在麻将游戏中 胡牌操作,就可以用模板方法,因为胡牌时 首先要判断 胡的是一个什么牌型,然后进行分数的计算,通知其他玩家胡牌 等一系列操作,首先不用模板方法来实现这个功能。abstracl class AbstractMajiang{abstract int ju

2017-11-20 23:15:45 134

原创 单例模式

单例模式是设计模式中比较简单和常用的一种,尤其是在spring中,默认的都是单例的,这样的好处是可以减少对gc的压力。而单例模式的实现又分很多种其中最简单也是最安全的一种就是public class Single { private final static Single single=new Single(); private Single() {}; public static

2017-09-26 22:54:28 130

原创 java死锁

今天公司项目当中代码中出现 了死锁,因为是第一次在项目中遇到,所以记录下来,也借着这个事情开始自己写博客的道路。代码发生的情况简单模拟如下:import java.util.HashMap;import java.util.Map;public class Match { public Map map=new HashMap<>(); public synchronized vo

2017-09-25 22:29:44 124

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除