摘要: 作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类称为单例类。单例模式的结构 单例模式的特点:单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有其他对象提供这一实例。 饿汉式单例类 上面的例子中,在这个类被加载时,静态变量ins 阅读全文
posted @ 2019-10-24 16:15 蜗牛的信仰 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 原型模式属于对象的创建模式。通过给出一个原型对象来指明所有创建的对象的类型,然后用复制这个原型对象的办法创建出更多同类型的对象。这就是选型模式的用意。 原型模式的结构 原型模式要求对象实现一个可以“克隆”自身的接口,这样就可以通过复制一个实例对象本身来创建一个新的实例。这样一来,通过原型实例创建新的 阅读全文
posted @ 2019-10-24 16:11 蜗牛的信仰 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 建造模式是对象的创建模式。建造模式可以将一个产品的内部表象(internal representation)与产品的生产过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。 产品的内部表象 一个产品常有不同的组成成分作为产品的零件,这些零件有可能是对象,也有可能不是对象,它们通常又 阅读全文
posted @ 2019-10-24 16:05 蜗牛的信仰 阅读(311) 评论(0) 推荐(0) 编辑
摘要: 工厂方法模式是类的创建模式,又叫做虚拟构造子(Virtual Constructor)模式或者多态性工厂(Polymorphic Factory)模式。 工厂方法模式的用意是定义一个创建产品对象的工厂接口,将实际创建工作推迟到子类中。 那么工厂方法模式是在什么场景下使用呢,下面就以本人的理解举例说明 阅读全文
posted @ 2019-10-24 16:00 蜗牛的信仰 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 一、抽象工厂模式 应用:spring必不可少的三个模式:factory模式(包括简单工厂和抽象工厂), strategy模式,template method模式 场景问题 举个生活中常见的例子——组装电脑,我们在组装电脑的时候,通常需要选择一系列的配件,比如CPU、硬盘、内存、主板、电源、机箱等。为 阅读全文
posted @ 2019-10-24 15:55 蜗牛的信仰 阅读(251) 评论(0) 推荐(0) 编辑
摘要: volatile是Java提供的一种轻量级的同步机制,在并发编程中,它也扮演着比较重要的角色。同synchronized相比(synchronized通常称为重量级锁),volatile更轻量级,相比使用synchronized所带来的庞大开销,倘若能恰当的合理的使用volatile,自然是美事一桩 阅读全文
posted @ 2019-10-24 15:49 蜗牛的信仰 阅读(3510) 评论(0) 推荐(0) 编辑
摘要: 1. ROUND_DOWN BigDecimal b = new BigDecimal("2.225667").setScale(2, BigDecimal.ROUND_DOWN);System.out.println(b);//2.22 直接去掉多余的位数2. ROUND_UP BigDecima 阅读全文
posted @ 2019-10-24 15:46 蜗牛的信仰 阅读(1047) 评论(0) 推荐(0) 编辑
摘要: 我们通常希望避免在两个并行事务中产生如下情形: Adam的事务读取数据 XBarbara的事务读取数据 XAdam的事务修改数据 X,并将其修改为 XAAdam的事务写入数据 XABarbara的事务修改数据 X,并将其修改为 XBBarbara的事务写入数据 XB结果是,Adam所做的修改完全被B 阅读全文
posted @ 2019-10-24 15:45 蜗牛的信仰 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 1、尽量指定类、方法的final修饰符 带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一 阅读全文
posted @ 2019-10-24 15:41 蜗牛的信仰 阅读(1199) 评论(0) 推荐(0) 编辑
摘要: 现有如下代码: 反例之一:丢弃异常 代码:15行-18行。 这段代码捕获了异常却不作任何处理,可以算得上Java编程中的杀手。从问题出现的频繁程度和祸害程度来看,它也许可以和C/C++程序的一个恶名远播的问题相提并论??不检查缓冲区是否已满。如果你看到了这种丢弃(而不是抛出)异常的情况,可以百分之九 阅读全文
posted @ 2019-10-24 15:40 蜗牛的信仰 阅读(161) 评论(0) 推荐(0) 编辑