频道栏目
首页 > 资讯 > Java > 正文

Java常见设计模式

17-07-19        来源:[db:作者]  
收藏   我要投稿

Java常见设计模式。

单列类模式的设计可以减少new与gc的频度,优化内存使用。即便是内部静态类(延迟加载),也可以通过反射强制生成多个实例。

享元模式(Flyweight)就是一个对象池+类厂,内部维护一个缓存。当有一个新的对象请求时,若缓存中有,就取出返回(共用一个对象);否则新建一个类型的对象,加入缓存。它与对象池不同的是,缓存中的对象可以是不同类型的,而且只有一份。

装饰模式(Decorator)也叫包装器模式(Wrapper)。动态地给一个对象添加一些额外的职责。装饰模式把一系列复杂的功能,分散到每个装饰器当中,一般一个装饰器只实现一个功能,可以给一个对象增加多个同样的装饰器,也可以把一个装饰器用来装饰不同的对象。

装饰者构造是传入被装饰者的引用(一般是interface),并在对应的方法中调用被装饰者的方法。可以多个装饰者叠加。

适配器模式,构建适配器传入适配者的引用(interface),在适配器方法中调用适配者方法。

它与装饰者模式一样,都是包装被包装的对象。适配器模式是为了统一接口,装饰者模式是为了新增功能。

Future模式只是生产者-消费者模型的扩展。经典“生产者-消费者”模型中消息的生产者不关心消费者何时处理完该条消息,也不关心处理结果。Future模式则可以让消息的生产者等待直到消息处理结束。即client初次请求(一个耗时的task)返回一个FutureData(空对象),然后client干另外的事,当耗时的task完成后,为空的FutureData设置RealData,client干完另外的事就可以get到。

Master-Worker模式:master负责分发与检查任务是否结束(while true),worker实现具体的task。

相关TAG标签
上一篇:Service中使用Toast,及遇到的问题
下一篇:ConcurrentHashMap实现原理
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站