黑马程序员技术交流社区
标题:
单例模式,以后学到javaweb就会用到了
[打印本页]
作者:
huangjiawei
时间:
2015-7-19 23:36
标题:
单例模式,以后学到javaweb就会用到了
基础知识有很多细枝末节用不上,不过这个单例模式会用上。别看现在没现在卵用,javaweb的核心之一sevlect就是采用的单例模式,当老师讲到的时候有个心理准备。
1.解决的问题:如何只让设计的类只能创建一个对象
2.如何实现:饿汉式 & 懒汉式
//饿汉式1
class Bank{
//1.私有化构造器
private Bank(){}
//2.创建类的对象,同时设置为private的,通过公共的来调用,体现封装性
//4.要求此对象也为static的
private static Bank instance = new Bank();
//3.此公共的方法,必须为static
public static Bank getInstance(){
return instance;
}
}
复制代码
//饿汉式2
class Bank{
//1.私有化构造器
private Bank(){}
//2.创建类的对象,同时设置为private的,通过公共的来调用,体现封装性
//4.要求此对象也为static的
private static Bank instance = null;
static{
instance = new Bank();
}
//3.此公共的方法,必须为static
public static Bank getInstance(){
return instance;
}
}
//懒汉式
class Bank{
private Bank(){}
private static Bank instance = null;
public static Bank getInstance(){
if(instance == null){//可能存在线程安全问题的!
instance = new Bank();
}
return instance;
}
}
复制代码
作者:
huangjiawei
时间:
2015-7-20 00:14
自己顶一个。。。。。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2