多例模式

Posted starskyhu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多例模式相关的知识,希望对你有一定的参考价值。

多例:只是单例的一种延伸   不必过于在意各种模式的名字,重要的是学会融会贯通,把生产的car放到集合中 类似JDBC 的连接池 把连接对象放到池中

多例模式特点:
     1. 多例类可以有多个实例
     2. 多例类必须自己创建自己的实例,并管理自己的实例,和向外界提供自己的实例

package com.pers.hoobey;

import java.util.ArrayList;
import java.util.List;
import java.util.Random;

public class Car1 {
  private static Car1 car1 = new Car1();
  private static Car1 car2 = new Car1();
  private static List<Car1> list = new ArrayList<Car1>();//用于存放多个实例的car
  private static final int maxCount =2;//最多的实例数
  static{
    list.add(car1);
    list.add(car2);
  }
  private Car1(){}//私有构造方法 避免外部创建实例
/*
* @description 指定拿取某一个实例
*/
  public static Car1 getInstance(int index){
    return list.get(index);
  }
  //随机拿取实例
  public static Car1 getInstance(){
    Random random = new Random();
    int current = random.nextInt(maxCount);
    return list.get(current);
}
public void run(){
System.out.println("奔跑中的车.....");
}
}

以上是关于多例模式的主要内容,如果未能解决你的问题,请参考以下文章

单例模式和多例模式的区别(转)

多例模式

第四梦 多例模式

多例模式

多例设计模式

Spring 单例模式和多例模式