设计模式
lixiangzhou
这个作者很懒,什么都没留下…
展开
-
单例模式
单例模式是指一个类就只有一个实例。理解:每个类都有一个构造方法(除了匿名内部类),如果构造方法是public、protect或默认的,就不止能生成一个实例,但是又不能缺少构造方法,因为它负责对类的一些初始化,所以单例模式的构造方法是private的。不能在外面获得该类的实例,就只能在内部获得,如果是成员变量的方式获得,每次引用该成员变量,就会获得不同的实例,所以就只能是通过方法获得,而且只有一原创 2012-12-11 23:03:04 · 377 阅读 · 0 评论 -
策略模式
定义:定义了一组算法,将每个算法都封装起来,并且使它们之间可以互换;策略模式使这些算法在客户端在调用它们的时候可以互不影响的变换。意义:策略模式使得开发人员能够开发出由许多可替换的部分组成的软件,并且各部分之间是弱连接的关系;弱连接的特性使软件具有更强的可扩展性,易于维护;更重要的是,它大大的提高了软件的可维护性。策略模式的组成抽象策略角色:策略类,通常由一个接口或抽象类实现具体策原创 2012-12-11 23:29:47 · 378 阅读 · 0 评论 -
装饰模式
装饰模式也叫装饰者模式、包裹模式。装饰模式可以动态的给对象添加一些功能,相比继承来说更加灵活。特点: - 装饰对象和真实对象有相同的接口。这样客户端对象就可以和真实对象相同的方式和装饰对象交互。 - 装饰对象包含一个真实对象的引用。 - 装饰对象接受所有来自客户端的请求。它把这些请求转发给真实的对象。 - 装饰对象可以在转发这些请求以前或以后增加一些附加功能。这样就确保了在原创 2012-12-15 20:14:37 · 383 阅读 · 0 评论 -
代理模式
代理模式的定义:对其他对象提供一种代理以控制对这个对象的访问。代理模式的思想:在实际对象和客户对象之间提供额外的处理或操作。角色抽象角色:声明代理角色和真实角色要实现的接口。真实角色:代表真实的对象,是我们最终要引用的对象。代理角色:包含对真实对象的引用以控制对真实对象的引用,同时实现了和真实对象相同的Interface,以便代替真实角色,还可以添加一些额外的操作或处理。代表真原创 2012-12-11 11:19:15 · 416 阅读 · 0 评论 -
动态代理模式
动态代理模式定义:动态的生成一个代理,以对其他对象加以控制。代理模式的思想:在实际对象和客户对象之间提供额外的处理或操作。主要涉及两个类:java.lang.reflect.InvocationHandler 和 java.lang.reflect.Proxyjava.lang.reflect.InvocationHandler:每一个代理实例都有一个与之相关联的Invocat原创 2012-12-11 21:52:56 · 519 阅读 · 0 评论