91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java 多線程-單例模式

發布時間:2020-07-13 14:55:08 來源:網絡 閱讀:287 作者:wx5d21d5e6e5ab1 欄目:編程語言

單例模式
對外只有一個對象,對內不管,比如每臺電腦都只有一個的任務管理器
1、構造去私有化
2、內部提供私有靜態屬性--存儲對象的地址
3、提供公共的靜態方法訪--獲取屬性
成員方法鎖定本對象數據為this,靜態方法鎖定為類名.class

public class my {

//2、提供私有靜態屬性
private volatile static my instance;  //避免new對象時指令重排
//1、構造器私有化
private my(){

}
//3、提供公共靜態方法訪問屬性
public static my getInstance()
{
    if(null!=instance)  //如果已經創建好對象,則不需要多個線程等待創建對象
    {
        return instance;
    }
    synchronized(my.class) //綁定類的模子
    {
    if(null==instance) //多線程可能創建多個對象,加入同步
    {
        instance=new my();//可能發生指令重排
        //new對象發生:1、開辟空間2、初始化對象信息3、返回對象的地址給引用instance
        //過程很慢,可能第三步會提前于第二步,a線程可能在初始化信息的時候 ,b線程可能已經拿到對象
        //加入voliatle避免這種情況
    }
    }
    return instance;

}

public static void main(String[]args) throws InterruptedException
{
//打印對象地址,檢驗單例模式是否成功
    Thread t=new Thread(()->{
        System.out.println(my.getInstance());
    });
    t.start();
    System.out.println(my.getInstance());
}

}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

茂名市| 长春市| 合阳县| 富蕴县| 嘉定区| 图片| 临潭县| 闽清县| 昌吉市| 闻喜县| 霍城县| 高尔夫| 叙永县| 宁津县| 嵩明县| 株洲县| 阿鲁科尔沁旗| 平乐县| 耒阳市| 霞浦县| 株洲县| 黔西县| 商洛市| 曲周县| 沙湾县| 剑河县| 吕梁市| 黔江区| 武邑县| 泸水县| 河东区| 石家庄市| 屏东市| 乐至县| 白城市| 增城市| 安徽省| 涞水县| 湖南省| 玉门市| 鄱阳县|