摘要:
本文转载自http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html记得大学的时候就学习过TCP的三次握手协议,那时候只是知道,虽然在书上看过很多TCP和UDP的资料,但是从来没有真正见过这些数据包, 老是感觉在云上飘一样,学得不踏实。有了wireshark就能截获这些网络数据包,可以清晰的看到数据包中的每一个字段。更能加深我们对网络协议的理解。对我而言, wireshark 是学习网络协议最好的工具。wireshark介绍wireshark的官方下载网站:http://www.wireshark.org/wireshark是 阅读全文
摘要:
六点起很困难,背单词很困难,静下心很困难...但是总有一些人,五点可以起床,一天背六课单词,耐心读完一本书。谁也没有超能力,但是自己可以决定一天去做什么事情。你以为没有了路,事实上路可能就在前方一点点。那些比自己强大的人都在拼命,我们还有什么理由停下脚步? 阅读全文
摘要:
前面我们学习过简单工厂模式,它简化了对象的创建,使得客户端调用时传入标志量,那么调用工厂就可以生产出相应的对象。那么工厂方法模式和简单工厂模式有什么区别呢? 我们还是拿前面运算类来举例子,我们先看简单工厂模式下的实现。 这个我们很熟悉了,创建一个抽象的运算类,提供公用的属性和方法以供继承,然后加减乘除四个子类继承自运算类。创建一个简单工厂类,根据客户端的标志量来生产出相应的运算类。 然后我们来看工厂方法的实现。 直观来看,工厂方法模式想比较简单工厂模式,它对工厂类又进行了抽象,简单工厂是用工厂去生产实例,而工厂方法则先构造相应的工厂,然后用工厂生产实例。 这其实就是简单工... 阅读全文
摘要:
代理模式大家都已经比较熟悉了,很多框架中也用到了代理模式。下面我们直接介绍代理模式。 代理模式,为其他对象提供一种代理以控制对这个对象的访问。 Subject类,定义了被代理对象和代理公用的接口,这样代理就可以使用了。 1 package proxy;2 3 public abstract class Subject {4 public abstract void request();5 } RealSubject类,定义Proxy代表的真实实体 1 public class RealSubject extends Subject{2 @Override3 ... 阅读全文
摘要:
装饰模式,动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更为灵活。 我们来看基本的代码实现: Component类: 1 package decorator;2 3 public abstract class Componnent {4 public abstract void operation();5 } ConcreatComponent类: 1 public class ConcreatComponent extends Componnent{2 3 @Override4 public void operation() ... 阅读全文