多例模式
public class Die {
private static Die die1 = new Die();
private static Die die2 = new Die();
/**
* 私有构造函数保证 外界 无法直接将此类实例化
*/
private Die() {
}
/**
* 工厂方法
* @param i
* @return
*/
public static Die getInstance(int i) {
switch (i) {
case 0:
return die1;
case 1:
return die2;
default:
return null;
}
}
/**
* 掷骰子 返回 1-6 之间的随机数
* @return int
*/
public synchronized int dice() {
System.out.println("-----------------------------");
Date date = new Date();
Random random = new Random(date.getTime());
//random.nextInt()可能返回 负数
int value = Math.abs(random.nextInt())%6 + 1;
return value;
}
}
public class DieTest extends TestCase {
public void testMain(){
Die die1 = Die.getInstance(0);
Die die2 = Die.getInstance(1);
System.out.println(die1.dice());
System.out.println(die2.dice());
}
}
分享到:
相关推荐
java设计模式之多例(Multiton)模式是对象的创建模式之一,多例模式中的多例类可以有多个实例,且多例类必须自己创建、管理自己的实例,并向外界提供自己的实例。多例模式的特点是:多例类可以有多个实例,多例类必须...
4. 多例模式(Multiton Pattern):与单例模式相似,但允许多个实例存在。 5. 工厂方法模式(Factory Method Pattern):定义了一个创建对象的接口,但让子类决定实例化哪一个类。 6. 抽象工厂模式(Abstract ...
根据提供的标题、描述、标签及部分内容,我们可以详细探讨C#中的单例(Singleton)与多例(Multiton)设计模式。 ### 单例模式 单例模式是一种常用的软件设计模式,它确保一个类只有一个实例,并提供一个全局访问...
在软件设计模式中,多例模式(Multiton)是一种扩展了单例模式的设计模式。单例模式确保一个类只有一个实例,而多例模式则允许一个类有多个实例,但通常数量是有限的。这种模式常用于资源管理,如数据库连接池、...
### 第4章:多例模式(Multiton Pattern) #### 概念: 多例模式是单例模式的一种泛化形式,允许多个实例存在,并且每个实例的状态相互独立。它能够确保类最多只能被实例化特定次数。 #### 适用场景: - 类似于...
4. 多例模式(Multiton Pattern) 多例模式是单例模式的扩展,它允许创建有限数量的实例。与单例不同,多例模式可以拥有多个实例,但每个实例的数量是有限制的。 5. 工厂方法模式(Factory Method Pattern) 工厂...
标题“java设计模式资源下载”和描述“策略模式、代理模式、单例模式、多例模式、工厂方法模式、抽象工厂模式、观察者模式、适配器模式、门面模式、桥梁模式”指向了设计模式这一软件工程中至关重要的概念。设计模式...
**多例模式(Multiton)** 多例模式是单例模式的一个扩展,它允许根据特定的标识(key)创建多个实例,而不是仅限于一个。这在某些场景下很有用,比如管理具有唯一标识的不同对象。Multiton模式可以有效地管理多个...
4. 多例模式(Multiton Pattern):与单例类似,但允许创建有限数量的实例。 5. 工厂方法模式(Factory Method Pattern):定义一个用于创建对象的接口,让子类决定实例化哪一个类。 6. 抽象工厂模式(Abstract ...
多例模式(Multiton Pattern) 类似于单例模式,但允许多个实例,每个实例都与某个标识符关联。 - **应用场景**:根据不同的参数返回不同的实例。 - **核心思想**:控制对象的创建过程,保证对于每个唯一的标识符...
#### 五、多例模式(Multiton Pattern) 多例模式是单例模式的一种变体,允许根据不同的参数返回不同的实例。这通常用于需要根据某种条件创建不同实例的情况。 #### 六、工厂方法模式(Factory Method Pattern) ...
三、多例模式(Multiton): 多例模式允许创建多个实例,但限制了实例的数量,根据不同的情况获取不同的实例。 四、建造者模式(Builder): 建造者模式将复杂对象的构建与表示分离,允许相同的构建过程创建不同...