一概述:
单例模式确保一个类只有一个实例,并提供一个全局访问点(static)。
二。构建单例模式的要点:1.构造方法私有化
2静态属性私有化,提供公共方法获取静态属性的实例
3.多线程下加synchronized关键字
三。懒汉式:
private Singleton1(){}
private static Singleton1 singleton1;
public static synchronized Singleton1 getIntances(){
if(singleton1 != null){
singleton1 = new Singleton1();
}
return singleton1;
}四。饿汉式:
private Singleton(){}
private static Singleton singleton = new Singleton();;
public static synchronized Singleton getIntances(){
return singleton;
}五:区别:
饿汉式是线程安全的,在类加载的同时就已经创建好一个静态的对象供系统使用,以后不再改变
懒汉式如果在创建实例对象时不加上synchronized则会导致对对象的访问不是线程安全的
本文详细解析单例模式的概念、构建要点、不同实现方式(饿汉式、懒汉式)及其区别,包括多线程环境下的线程安全问题与解决策略。
2617

被折叠的 条评论
为什么被折叠?



