自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 单例模式(多线程不安全,序列化不安全,反射不安全实例)

<pre name="code" class="html">import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.io.ObjectInputStream...

2019-01-31 09:33:40 525

转载 Protobuf学习

Protobuf是什么Protobuf是一种平台无关、语言无关、可扩展且轻便高效的序列化数据结构的协议,可以用于网络通信和数据存储。为什么要使用Protobuf                                                              protobuf特点.png如何使用Protobufprotoc -I=$SRC_DIR ...

2019-01-30 14:48:44 638

转载 tomcat,Jboss,weblogic区别与比较

一、tomcatTomcat 服务器是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Ser...

2019-01-29 13:54:44 1129

转载 2018年JAVA基础面试题和高级面试题总结

Java面试前需要做足各方面的准备工作,肯定都会浏览大量的面试题,本人也不例外,通过浏览面试题和以往的面试经历,总结了从初级到中级以及高级的面试题,供大家学习讨论。Java面试高级篇—Java NIO:浅析I/O模型面试题15期Java面试高级篇—详谈Java四种线程池及new Thread的弊端面试题14期Java面试高级篇—说说TCP,UDP和socket,Http之间联系和区别面...

2019-01-28 10:27:31 449

转载 【设计模式学习笔记】单例模式

单例模式,只能获取一个实例。文章目录1.1 单例模式-懒汉模式1.2 单例模式-饿汉模式1.3测试1.4 结果参考 1.1 单例模式-懒汉模式package singleton;/************************************************ *@ClassName : single *@Description : 第...

2019-01-28 08:15:37 122

转载 【设计模式学习笔记】代理模式

代理模式:本身不干活,干活的时候找别人去干。文章目录1.1 接口1.2 实现1.3 测试1.4 结果1.5 UML参考 1.1 接口package proxy;/************************************************ *@ClassName : CompanyWorkI *@Description : TO...

2019-01-26 09:07:45 184

转载 【设计模式学习笔记】策略模式

In computer programming, the strategy pattern (also known as the policy pattern) is a behavioral software design pattern that enables selecting an algorithm at runtime. [wiki]文章目录1.1 接口1.2 实现类...

2019-01-25 08:28:36 175

转载 【设计模式学习笔记】责任链模式

责任链模式,将请求和处理对象分离,将请求发送给一个请求处理入口后,谁具有请求的处理权限,谁就处理请求。文章目录1.1 请求入口Position1.2 继承Position1.3 最近聚餐,周知周知1.4 结果参考每年这个时候大概都是公司的聚餐季。但是我们的汽车厂,领导们饭后还有特别活动,比如讨论个“来年计划”啥的。我不清楚,我没当过领导。1.1 请求入口Posi...

2019-01-24 15:49:16 201

转载 【设计模式学习笔记】状态模式

状态模式,这里的状态模式和EDA中的状态设计方法相似,但又是不同的。下面这句话是网上的解释:类的行为是基于它的状态改变的。这种类型的设计模式属于行为型模式。在状态模式中,我们创建表示各种状态的对象和一个行为随着状态对象改变而改变的context对象。【菜鸟教程】文章目录1.1 一个动作接口,方便以后增加更多的行为1.2 启动生产线是这样的1.3 测试1.4 结果参考 ...

2019-01-24 09:40:32 121

转载 【设计模式学习笔记】模板模式

模板模式,定义一个模型,模型中的具体细节我们自己去设计。这和我们之后会提到的建造者模式有点相似。文章目录1.1 先来个模板1.2 根据模型设计个车1.3 测试1.4 结果参考 1.1 先来个模板package template;/************************************************ *@ClassName : ...

2019-01-23 09:58:54 144 1

转载 【设计模式学习笔记】访问者模式

访问者模式:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。[菜鸟]文章目录1.1 访问者接口1.2 实现一个访问者1.3 被访问的接口1.4 被访问接口的实现1.5 测试1.6 结果参考怎么说呢,访问者模式和观察者模式还是...

2019-01-23 08:23:49 624

转载 【设计模式学习笔记】原型模式

原型模式,估计这是最简单的模式了。这个模式可以用于创建重复的对象,同时又能保证性能。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。额外说一句,这里的创建对象只是浅拷贝的。文章目录1.1 浅拷贝1.2 测试1.3 结果2.1 深拷贝2.2 测试深拷贝2.3 结果参考没什么好说的,直接看程序吧。要实现对象的浅拷贝,需要让待拷贝对象实现Clon...

2019-01-22 16:06:31 108

转载 【设计模式学习笔记】观察者模式

观察者模式,提供了一种实时监听方案。定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。[菜鸟]文章目录1.1 被观察者1.2 观察者1.3 测试1.4 结果参考当我们的流水线,每生产一辆车,我们都要记录并检验这辆车。这里的记录员和质检员就是观察者。生产线则是被观察者。当被观察者变化时,就要通知其依赖的这些记录员...

2019-01-22 15:24:17 113

转载 【设计模式学习笔记】空对象模式

空对象模式:一个空对象取代 NULL 对象实例的检查。Null 对象不是检查空值,而是反应一个不做任何动作的关系。这样的 Null 对象也可以在数据不可用的时候提供默认的行为。【菜鸟】文章目录1.1 抽象对象及对应的继承类。1.2 工厂1.3 测试1.4 结果 当我们的系统中找不到某种车型的时候,直接返回对象肯定是个null。这时候如果你不做什么判断处理直接调用对象中的...

2019-01-18 08:07:10 102

转载 【设计模式学习笔记】多例模式

多例模式,即多个单例,并不是简单的new new new,算是个极端,不能完全否定吧。文章目录1.1 多例模型1.2 测试1.3 结果1.1 多例模型package multiton;import java.util.HashMap;import java.util.Map;/*****************************************...

2019-01-17 08:17:08 110

转载 【设计模式学习笔记】备忘录模式

备忘录模式:保存一个对象的某个状态,以便在适当的时候恢复对象。备忘录模式属于行为型模式。 文章目录1.1 首先改造我们的车1.2 备份1.3 备忘录1.4 恢复1.5 结果参考最近我们车厂决定要扩建一个维修厂,这个维修厂可以让让用户的车恢复到之前的任意状态。是不是很牛?!1.1 首先改造我们的车package memento;/**********...

2019-01-16 08:06:53 167

转载 【设计模式学习笔记】享元模式

享元模式:主要用于减少创建对象的数量,以减少内存占用和提高性能。这种类型的设计模式属于结构型模式,它提供了减少对象数量从而改善应用所需的对象结构的方式。【菜鸟】文章目录          1.1 宝马车长这样          1.2 工厂是这样涂装的          1.3 涂涂涂          1.4 结果          参考 这个模式也比较简单。比如...

2019-01-15 09:22:13 88

转载 【设计模式学习笔记】解释器模式

解释器模式,最经典的解释器模型就是我们用的那些IDE。将你编写的语言转成机器语言。这个转换就可以理解为解释。文章目录          1.1 模型结构          1.2 环境角色          1.3 抽象表达式接口          1.4 终结和非终结表达式实现​​​​​​​          1.5 测试​​​​​​​          1.6 ...

2019-01-14 08:51:01 219

转载 【设计模式学习笔记】迭代器模式

迭代器模式,这是一个很好玩的模式。其实迭代器已经存于集合中了。但是呢,我们可以动手写一个迭代器,并且将其运用在迭代器模式中,而不是在list中。文章目录          1.1 定义一个迭代器接口及实现          1.2 我们统计生产的车是这样的          1.3 开始记录了          1.4 结果          参考我们的车间每天都在...

2019-01-13 18:16:37 185

转载 【设计模式学习笔记】中介者模式

中介者模式:用来降低多个对象和类之间的通信复杂性。这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护。中介者模式属于行为型模式。【菜鸟】文章目录           1.1 交谈动作及对象          1.2 中介者长这模样          1.3 测试         ​​​​​​​ 1.4 结果         ​​​​​​...

2019-01-13 17:57:43 109

转载 【设计模式学习笔记】工厂方法模式

工厂方法模式又称为工厂模式(哈?!(´⊙ω⊙`)),也叫虚拟构造器(Virtual Constructor)模式或者多态工厂模式(Polymorphic Factory),在工厂方法模式中,父类负责定义创建对象的公共接口,而子类则负责生成具体的对象,这样做的目的是将类的实例化操作延迟到子类中完成,即由子类来决定究竟应该实例化(创建)哪一个类。 文章目录           1.1 定义...

2019-01-11 08:52:20 132

转载 【设计模式学习笔记】简单工厂模式

简单工厂模式又称为静态工厂模式,提供一个公有的静态工厂方法,返回一个类的实例。通过工厂我们不必具体去实例化某一个实例对象。只需要传递某些约定的参数,工厂会自动找到该类并将其实例化。文章目录           简单工厂模式          1. 创建一个接口,接口中定义公用方法。          2. 创建接口对应的实现          3. 创建工厂类...

2019-01-10 14:35:47 114

转载 【设计模式学习笔记】门面模式

门面模式,上级不用知道下级在干什么。下级按照流程处理,反馈给上级结果就好了。文章目录           1.1 流程方法接口          1.2 流程实现          1.3 调用流程中的步骤          1.4 测试          1.5 结果          参考1.1 流程方法接口package facade;/**...

2019-01-09 10:29:25 109

转载 【设计模式学习笔记】装饰器模式

装饰器模式,顾名思义就是装。人靠衣装,马靠鞍。天生一副臭皮囊,穿金戴银之后,就显得与众不同于。装饰器模式在不改变原来类结构的基础上,对原来的类进行了扩展。并且这是一种弱耦合形式。文章目录           1.1 天生一副臭皮囊          1.2 人靠衣装,车靠涂装          1.3 亮个相          1.4 你看到了啥          ...

2019-01-08 13:30:15 100

转载 【设计模式学习笔记】组合模式

组合模式,适用于树状结构。模式有三个角色:组合部件,合成模块,叶子。组合部件是组合其余两者的父类。它是一个提供公共属性,方法的抽象类。合成模块用于合成最终的组合对象,叶子节点是组合部件的底层,也就相当于树枝与树叶。该模式又为安全模式和透明模式。两者却别在于父类是否提供用于合成组件的所有方法。文章目录    1 透明模式:        1.2 抽象组合部件        1.3...

2019-01-08 11:55:17 114

转载 【设计模式学习笔记】命令模式

命令模式主要解决行为请求者与行为执行者的强耦合而出现的一种行为模式。通常模式有三种角色,命令执行者,命令,命令入口。文章目录 1.1 命令的执行者 1.2 命令模块 1.3 命令入口 1.4 测试 1.5 结果 参考1.1 命令的执行者为了易于扩展,我...

2019-01-07 16:44:57 135

转载 【设计模式学习笔记】建造者模式

建造者模式,以某种形式组合出对象。它和工厂模式的区别在于是否有组合的概念。建造者模式中有产品对象,建造者对象,监工对象。产品对象是各种各样的POJO,建造者以某种方式组合产品,监工就比较像工厂,获取产品组合后的对象。这两天看了菜鸟上的讲解和设技模式之禅。这两者讲的有些不同。菜鸟上是产品对象的组合,而设计模式之禅上则偏向对象内部属性的组合。文章目录          1.1 创建  ...

2019-01-07 16:21:30 78

转载 【设计模式学习笔记】适配器模式

适配器模式,你有我需要的信息但是我俩信息封装的类型不同,你无法直接给我。就像我又一个三脚插头,你是两孔的插座。需要一个转换器,让我用上你的电。P.S.:很危险,不要干这种事。。。文章目录          1.1 不同的客户信息封装          1.2 我能怎么办,当然转换了~          1.3 测试          1.4 结果          1....

2019-01-05 12:26:14 112

转载 【设计模式学习笔记】抽象工厂模式

1. 抽象工厂模式抽象工厂提供了一系列相关或相互依赖对象的接口,而无须指定他们具体的类。  文章目录1. 抽象工厂模式    1.1 创建车与人的接口,及其实现    1.2 创建获取不同种类实例的抽象类    1.3 实现上面的抽象类    1.4 测试2. 参考我们有两个不同类的东西,一个是车,一个是人;车分宝马车、奔驰车,人分男人、女人。我们想要通过一...

2019-01-04 09:43:58 192

转载 【设计模式学习笔记】桥梁模式

文章目录         1.1 我们的厂房长这样         1.2 CarA长这样         1.3 CarA下扩展个产品吧,这个很easy         1.4 实实在在的车房         1.5 测试         1.6 结果         1.7 uml         参考桥梁模式提供了一种弱类间关系,关联关系。在设计模式之禅...

2019-01-03 22:22:13 129

转载 【设计模式学习笔记】观察者模式

观察者模式,提供了一种实时监听方案。定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。[菜鸟]  文章目录1.1 被观察者 1.2 观察者 1.3 测试 1.4 结果 参考当我们的流水线,每生产一辆车,我们都要记录并检验这辆车。这里的记录员和质检员就是观察者。生产线则是被观察者。当被观察者变化时,就要通知其依赖的这些记录...

2019-01-02 11:05:46 95

空空如也

空空如也

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

TA关注的人

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