1.寫一個單例類。
// 第一種形式:餓漢式單例
public class Singleton {
private Singleton(){}
private static Singleton instance = new Singleton();
public static Singleton getInstance(){
return instance;
}
}
// 第二種形式:懶漢式單例
public class Singleton {
private static Singleton instance = null;
private Singleton() {}
public static synchronized Singleton getInstance(){
if (instance==null) instance=newSingleton();
return instance;
}
}
2. 說說你所熟悉或聽說過的設計模式以及在開發中使用到了哪些設計模式?
建立型:簡單工廠,工廠方法,抽象工程,builder模式,singleton,prototype(clone)
結構型:介面卡,裝飾,橋接,外觀,合成,代理模式
行為型:命令模式,觀察者,策略模式,模板,狀態模式,迭代器模式,備忘錄模式