`
men4661273
  • 浏览: 275763 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
    什么是socket    所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。    以JDK-1.6为例,Socket和ServerSocket类库位于java.net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是Serv ...
    Factory Method定义     工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际工作推迟到子类中      工厂方法模式是简单工厂模式的进一步抽象和推广。由于使用了多态性,工厂方法模式保持了简单工厂模式的 ...
    Abstract Factory定义    为一系列相关对象或相互依赖的对象创建一个接口,而无需指定它们的具体类。抽象工厂在这里起到一个约束的作用,并提供所有子类的一个统一外观,来让客户端使用      假设现在有一个车辆制造工厂,它生产两种车,A类车和B类车,每类车有其各自的车门和轮子,这就需要不同的车间来做,A类车的车间有生产车门的工作,有生产轮子的工作,B类车的车间有生产车门的工作,有生产轮子的工作,我们需要哪类车的部件时,就去哪个车间拿,拿的过程(相同的操作,抽取出来一个抽象工厂类,这里的拿就是指方法)是一样的。 接下来使用一个例子来说明这个过程: package abs ...
   参考:http://www.java3z.com/cwbwebhome/article/article2/2888.html     Adapter模式,中文解释为适配器模式,那什么是Adapter模式那?我们先来看看GOF的《设计模式》是如何解释的:     将一个类的接口转换成客户希望的另外一个接口,Adapter使原本由于接口不兼容而不能一起工作的类可以一起工作。      是不是觉得很拗口,有点不知所挫?我们再来看看《设计模式解析》上的解释:     我们需要一种方式,为一个功能正确但接口不合的对象创建一个新接口。      这句话可能不像刚才那么拗口,但初学者可能任然 ...
    visitor定义       作用于某个对象群中各个对象的操作. 它可以使你在不改变这些对象本身的情况下,定义作用于这些对象的新操作.   在Java 中,Visitor 模式实际上是分离了collection 结构中的元素和对这些元素进行操作的行为         参考:http://smartfool.iteye.com/blog/207092 总觉得他的代码实现有些问题,每次执行的都是默认的业务方法,所以修改了下     话说有一个银行,有三个窗口,但是每个窗口的智能都是一样的,即都能办理所有的业务。因此每位来银行办理业务的人只要排队就是了,排到你了,就向业务员说明你要办理 ...
  Mediator中介者模式定义     Mediator 中介者,或者叫仲裁者,类似房屋的中介,比如演播室的主播和嘉宾,主播在说话的时候,嘉宾不能打断他,主播停止说话的时候嘉宾才能说话,主播则可以随时说话,这里还有一个中间人:      1.主播对中介者说,节目开始了,我要说话了      2.中介者看看嘉宾是不是在说话,如果是在说话,让他停止,让主播说,如果嘉宾没在说话,让主播说      3.嘉宾告诉中介者说我要说话,中介者看看主播是否在说话,如果在说话,就告诉嘉宾说主播在说,你等等再说;如果主播不在说话,则让嘉宾说 代码例子如下:   package mediator; /* ...
      模板是指在薄片塑料板上面写字后挖空,再使用毛笔或色笔涂满挖空部分,就能看到纯手工而以不失工整的字样,看到模板上的挖空形状,马上就知道最后会变出什么样子的字,不过实际上所显现出来的字样还是要依所使用的画笔种类而定.拿黑色签字笔当画笔,结果当然就是签字笔的字样;当用铅笔来画,得到的也只会是灰黑色的铅笔字;如果用五颜六色的彩色笔,自然能创出让人眼花的多色字.但是,无论使用哪种文具,制作出来的字样都还是脱不了模板上已经固定的形状。 package template; /* * 抽象类,充当模板角色 * @author administrator * ...
   Iterator迭代子模式定义     一般是对集合进行遍历使用,java的集合类都可以迭代,一般不需要自己设计Iterator    package iterator; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class Test { public static void main(String[] args) { List<String> list = new ArrayList<String> ...
    strategy定义     Strategy 是属于设计模式中 对象行为型模式,主要是定义一系列的算法,把这些算法一个个封装成单独的类.     这里以字符串格式化为例子: package strategy; //算法接口类,声明通用的方法 public interface Replace { public String replace(String s); } package strategy; //算法类A,实现接口的方法 public class ReplaceA implements Replace { public S ...
    state定义     不同的状态,不同的行为;或者说,每个状态有着相应的行为.         就像电风扇的开关,一档的上一个是关闭,关闭的上一个是五档,五档的上一个是四档,以此类推,而且五档的下一个是关闭,关闭的下一个是一档。那么在实际应用中,我们可能会这样做:      在上一档的方法中: if(level == 5){ level = 4; do something(); }else if(level == 4){ level = 3; do something(); } else if (level == 3){ level == 2; do s ...
    Command定义     将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可取消的操作。      优点: 解耦了调用者和接受者之间联系。调用者调用一个操作,接受者接受请求执行相应的动作,因为使用Command模式解耦,调用者无需知道接受者任何接口。      缺点: 造成出现过多的具体命令类 代码例子如下: 播放器执行命令者: package command; //命令执行者播放器 public class Player { public void turnOn(){ System.out.prin ...
    Observer的定义       定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。         因为java里有Obserable和Observer, 所以通常在java里不会自己设计观察者模式。     Java 中的Observable 类和 Observer 接口。 (1) Observable 类代表 被观察者 (java.util.Observable ) 主要方法有: void setChanged() : 设置被观察者的状态已经被改变 void addObserver(Observer observ ...
Chain of Responsibility定义   Chain of Responsibility(CoR) 是用一系列类(classes)试图处理一个请求request,这些类之间是一个松散的耦合,唯一共同点是在他们之间传递request. 也就是说,来了一个请求,A类先处理,如果没有处理,就传递到B类 ...
一、Memento模式的目的:        memento是一个保存另外一个对象内部状态拷贝的对象.这样以后就可以将该对象恢复到原先保存的状态. 二、Memento模式的简单例子: package memento; import java.io.File; public class Originator { ...
Global site tag (gtag.js) - Google Analytics