摘要: 为什么要使用BigDecimal: 请参考以下的运行程序: 1.使用0.1+0.2时 出现了如下的情况: 这个是没有BigDecimal的情况 0.1 + 0.2 =0.30000000000000004。 产生这种错误的原因是: 因为计算机是二进制的,对于double,float类型的10进制数据 阅读全文
posted @ 2021-09-14 21:36 王佳智 阅读(772) 评论(0) 推荐(0)
摘要: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 因为这个类只有一个实例,所以我们不能够允许调用方通过new的方式创建实例了。所以,单例的构造方法必须是private,这样就防止了调用方自己创建实例,但是在类的内部,可以通过一个静态字段来引用唯一创建的实例的: public class Sin 阅读全文
posted @ 2021-09-14 20:00 王佳智 阅读(306) 评论(0) 推荐(0)
摘要: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 原型模式 Prototype,是指创建新的对象的时候,根据一个现有的原型来创建。 我们举个例子:如果我们已经有了一个String[]数组,想要再创建一个一摸一样的String[]数组,怎么写? 实际上创建的过程很简单,就是把现有的数组 阅读全文
posted @ 2021-09-14 19:30 王佳智 阅读(911) 评论(0) 推荐(0)
摘要: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 生成器模式(Builder)是使用多个“小型”工厂来最终创建出一个完整对象。 当我们使用Builder的时候,一般来说,是因为创建这个对象的步骤比较多,每个步骤都需要一个零部件,最终组合成一个完整的对象。 我们仍然以Mark 阅读全文
posted @ 2021-09-14 11:18 王佳智 阅读(554) 评论(0) 推荐(0)
摘要: 与工厂方法相比,工厂是抽象的,产品是抽象的,需要去实现具体的产品,创建实现类抽象Factory定义好的抽象方法。 阅读全文
posted @ 2021-09-14 10:21 王佳智 阅读(124) 评论(0) 推荐(0)
摘要: 定义一个创建对象的接口让子类去决定实例化哪个类。FactoryMethod使一个类的实例化延迟到其子类。 工厂方法即Factory Method,是一种对象创建型模式。 工厂方法的目的是使得创建对象和使用对象是分离的,并且客户端总是引用抽象工厂和抽象产品(也就是说使用Product和Factory) 阅读全文
posted @ 2021-09-14 09:52 王佳智 阅读(1250) 评论(1) 推荐(0)