java设计模式
文章平均质量分 94
Always_As
IT小白
展开
-
自己实现一个简单的线程池
自己实现一个简单的线程池 介绍 当使用多线程的时候频繁的创建销毁线程是比较耗费系统资源,这个时候就需要使用线程池来管理减少资源的开销。在某站学习过后,决定自己也写一个简单的线程池,来加深印象。 线程池中肯定需要有一个等待队列,里面存入相关的任务。然后每次从里面取出任务执行,继续往队列里添加任务。在这个过程中可能任务处理的时间比较长,存或取这个过程就需要添加超时时间,不然一直会阻塞等待。 任务队列 基础属性 /** * 任务队列 */ private final Deque<T> queue原创 2021-01-25 00:20:43 · 847 阅读 · 2 评论 -
Java设计模式之单列模式
简言单列模式:单一,也就是说一个类只能有一个对象。就类似于有些软件只能打开一次,当需要保证一个对象在内存中的唯一性时,就需要引入单列模式。实现步骤创建单列模式分三步操作:1.将构造函数私有化2.在类中创建一个本类对象3.提供一个公有的接口来返回创建的类相关说明我们访问类里面的数据时,分两种情况:1.通过实例化对象,然后通过对象的引用“.”出方法或属性。2.通过类名“.”调用类里面静态的方法或属性。...原创 2018-04-14 01:41:22 · 339 阅读 · 0 评论 -
Java设计模式之工厂方法模式
前言java有23中设计模式。设计模式在Java编程里面用处非常的多,如果把开发一个项目比喻成盖房子,在盖房子的过程中不同的位置需要不同的设计方式,如果设计的好,房子会更耐用更美观。在开发过程中有时就要引入设计模式,让代码可重用,保证代码可靠性,提高开发效率等。介绍工厂方法模式:顾名思义,类似于一个工厂对不同的产品进行加工,然后分配给需要该产品的商家。步骤第一步:创建抽象产品类Peoplepack...原创 2018-04-13 14:17:29 · 211 阅读 · 0 评论 -
反射实现动态代理
代理模式代理模式的定义:为其他对象提供一种代理以控制这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用应一个对象,需要实现相同的接口,而代理对象可以在客户端和目标对象之间起到中介的作用。就好比销售。代理商是受别人的委托,帮助委托人销售指定的商品。而这件商品原本是委托人,而不是代理商的。Java中的开闭原则:对拓展是开放的,修改是封闭的,不得修改源代码。当我们对一个类进行拓展时,这时就需要...原创 2018-05-22 22:32:18 · 378 阅读 · 0 评论