設計模式之三:單例模式(餓漢式與懶漢式)

//保證類在內存中只有一個對象

package com.xjh.demo.designpattern.pattern3;

public class Student {

    private Student(){

    }

    //懶漢式
    private static Student s=null;

    //懶漢式易出現線程安全問題:多線程環境、數據共享、多條語句操作數據
    public synchronized static Student getStudent(){
        if(s==null){
            s=new Student();
        }
        return s;
    }

   //餓漢式
    private static Student s=new Student();
    public static Student getStudent(){
        return s;
    }
}
package com.xjh.demo.designpattern.pattern3;

public class StudentTest {

    public static void main(String[] args) {
        Student s1 = Student.getStudent();
        Student s2 = Student.getStudent();
        System.out.println(s1 == s2);
    }
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章