- 浏览: 278216 次
- 性别:
- 来自: 北京
最新评论
-
typ0520:
推荐一个socket编程的异步socket类库,https:/ ...
java之Scoket 客户端和服务器的发送与接收 -
GGGGeek:
处理excel的时候,列太多,已经把pdf设置横向,依然不行, ...
jacob操作office分享 -
men4661273:
小白马 写道能不能发一下源代码啊https://git.osc ...
android自定义popupwindow仿微信 -
贝塔ZQ:
不错不错,总结的挺好的。插件实现也是不错的,PageOffi ...
jacob操作office分享 -
小白马:
能不能发一下源代码啊
android自定义popupwindow仿微信
文章列表
什么是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 { ...