本文主要是介绍单例模式和多例模式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
public class test9 {
// 单例模式:懒汉
// 所有的请求都用同一个对象处理,节省内存private static test9 test9;private test9(){
//构造器私有,防止外界调用}public static test9 getobject(){if(test9==null){test9=new test9();}return test9;}}
public class test10 {
// 饿汉模式private static test10 test10=new test10();;private test10(){}public static test10 getTest10(){return test10;}
}
import java.util.ArrayList;
import java.util.Random;
/*多例模式,
每次请求都用不同的对象,防止并发问题的产生
* */
public class test11 {
// 对象数量private static final int N=10;
// 装对象的容器private static ArrayList<test11> list = new ArrayList<test11>(N);;private test11(int num){System.out.println("creat "+num);}static{
// 实例化全部对象for (int i = 0; i < N; i++) {list.add(new test11(i));}}public static test11 getTest11(){
// 获取随机数,实例化集合中对应索引的对象Random random=new Random();int r=random.nextInt(N);return list.get(r);}
}
这篇关于单例模式和多例模式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!