首页 > 代码库 > 什么是单例模式?
什么是单例模式?
单例模式:
1.保证类在内存中只能有一个对象
单例模式分为:
1.懒汉式:类一加载就创建对象
2.饿汉式:用的时候,才去创建对象
相关经验:
饿汉式 (是不会出现问题的单例模式)
懒汉式 (可能会出现问题的单例模式)
(1.)懒加载(延迟加载)
(2.)线程安全问题
1.)是否多线程环境 是
2.)是否有共享数据 是
3.)是否有多条语句操作共享数据 是
举例:
1.饿汉模式:
public class Student{
//私有构造方法
private Student(){
}
//在本类中进行实例,只能实例一次,并且是私有的
private static final Student STUDENT = new Student();
//提供公共的方法,供外界去访问
public static Student getStudent(){
return STUDENT;
}
}
2.懒汉模式
public class Student{
private Student(){}
//这是声明这个对象,什么时候使用它的时候什么时候去创建
private static Student student = null;
//线程同步锁,确保内存中只能有一个对象
public synchronized static Student getStudent(){
if (student == null) {
student = new Student();
}
return student;
}
}
什么是单例模式?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。