定義
示例:singletonpattern
/// /// 單例模式的特點
/// (1)私有的構造方法
/// (2)私有的靜態的變數
/// (3)自定義的例項化的方法
///
public class singleton
//要素2
//靜態私有成員變數
private static singleton objinstance;
//要素3
public static singleton getinstance()
return objinstance;
//偽碼,實現鎖
/*lock;
if (objinstance == null)
return objinstance;
*///偽碼,實現雙檢查鎖,會出現reorder
//(記憶體分配->構造器->賦值,此過程發生混亂,先賦值[此時為 // null],後面再記憶體分配,其實此時物件仍然為空,存在欺騙 // 性)
/*if (objinstance == null)
}return objinstance;*/}
public void showcount()
}
class program
console.readkey();
}}
定義
示例:prototypepattern
[serializable]//表示可以進行序列化操作
public class member
public string name
}
//程式集「prototypepattern, version=1.0.0.0, culture=neutral, publickeytoken=null」中的型別「prototypepattern.person」未標記為可序列化。
[serializable]//若未定義為可序列化,則會報上述錯誤
public class person : icloneable
public member member
public object clone()
public person()
#region 靜態方式建立物件
private static person _person;
static person()
public static person staticclone()
#endregion
}
public class serializehelper
}catch (exception e)
}/// /// 反序列化
///
///
///
///
public static t derializable(string target)
}/// /// 合併 序列化與反序列化
///
///
///
///
public static t deepclone(t t)
}
/// /// 原型模式:保留乙份原始,其它可根據此進行拷貝。
/// 示例:深拷貝與淺拷貝
/// 深拷貝:對於引用型別資料會拷貝乙份,修改後,不會影響原始資料。
/// 淺拷貝:對於引用型別資料不會拷貝,因此修改後,對原始資料有影響。
/// 深拷貝或淺拷貝均會對值資料複製乙份。
///
///
static void main(string args)
其它
定義 理解
定義理解 定義
理解 定義
示例:proxypattern
inte***ce isubject
public class concretesubject2 : isubject
}
public class proxy2 : isubject
concretesubject2.request();
}}
/// /// **模式特點:
/// 1、具體類與**類繼承抽象類(或介面)
/// 2、重寫方法
/// 3、在**中呼叫具體類中實現的方法
///
class program
}
說明:對於實現類concretesubject2中方法request()加入列印日誌功能,直接更改request()方法,這是不太合理的。使用**類,則能不更改類concretesubject2中方法request()**。缺點:增加了**量。
淺拷貝
深淺拷貝區別
定義定義
不為你所了解的諾基亞
公司型別public omx nok1v nyse nok stockholmsborsen noki frankfurter wertpapierborse noa3 成立時間芬蘭諾基亞 1865年 總部地點芬蘭埃斯波 重要人物fredrik idestam,founder jorma ollil...
我所了解的java設計模式之建造者模式
建造者模式 將乙個複雜物件的構造與它的表示分離,使同樣的構建過程可以建立不同的表示,這樣的設計模式被稱為建造者模式。建造者模式於抽象工廠模式區別 建造者模式關注的是零件型別和裝配工藝 順序 而工廠模式是建立乙個物件,這是最大不同的地方。這裡是更詳細的說法 director 控制者類,這是控制整個組合...
你所不太了解的位運算
與 或 非 異或這些運算子的含義就不過多介紹了,本篇文章主要通過乙個例題來介紹如何靈活使用位運算子,來給我們的演算法錦上添花。例題如下 演算法 如下 class solution return ones 解題思路如下圖所示 考慮數字的二進位制形式,對於出現三次的數字,各二進位制位出現的次數都是3的倍...