自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C# Hashtable對象分析

開發(fā) 后端
這里介紹C# Hashtable對象,程序中聲明了一個Hashtable類型的對象:_eventList,每一個Class1類的實體都擁有這個對象。

C#語言有很多值得學(xué)習(xí)的地方,這里我們主要介紹C# Hashtable對象,包括介紹兩個object類型的對象:_processStart、_processEnd等方面。

程序中聲明了一個Hashtable類型的對象:_eventList,每一個Class1類的實體都擁有這個對象,另外還聲明了兩個object類型的對象:_processStart、_processEnd,注意!這兩個對象是static(靜態(tài))類型,也就是說,不管有多少個對象實體,都只須花費兩個object的空間。答案是對象所占的內(nèi)存大小不同,當(dāng)用戶創(chuàng)建一個對象實體之后,此對象占用了一個C# Hashtable對象的內(nèi)存空間,在用戶設(shè)定了ProcessStart事件時,此對象隨之占用了一個Hashtable元素的內(nèi)存空間,若用戶未設(shè)定事件,那么此元素的內(nèi)存空間就不會被占用,此方式可以省下不必要付出的內(nèi)存成本。再詳細點說,假設(shè)Class1擁有1000個事件,那么程序的做法在對象創(chuàng)建初期就會占用1000個event變量的內(nèi)存空間,而程序則要付出一個C# Hashtable對象及1000個static變量的代價,當(dāng)用戶創(chuàng)建了第二個對象時,程序要再次占用了1000個event變量的代價,但一下程序只須占用一個C# Hashtable對象的代價

.NET Framework內(nèi)建的事件支持

  1. public class Component1:Component  
  2. {  
  3. private static object _processStart = new object();  
  4. public event EventHandler ProcessStart  
  5. {  
  6. add  
  7. {  
  8. Events.AddHandler(_processStart,value);  
  9. }  
  10. remove  
  11. {  
  12. Events.RemoveHandler(_processStart,value);  
  13. }  
  14. }  
  15. public void Process()  
  16. {  
  17. EventHandler handler = (EventHandler)Events[_processStart];  
  18. if(handler != null)  
  19. handler(this,null);  
  20. }  

【編輯推薦】

  1. C#運用Trace語句
  2. C#調(diào)用ImOK學(xué)習(xí)筆記
  3. C#實現(xiàn)OLE DB的DB2開發(fā)
  4. C#使用ADOX學(xué)習(xí)經(jīng)驗
  5. C#信息架構(gòu)視圖
責(zé)任編輯:佚名 來源: cnblogs
相關(guān)推薦

2009-08-12 13:56:26

C# Hashtabl

2009-08-21 17:45:40

C#調(diào)用COM對象

2009-09-01 10:58:46

C#匿名類型對象

2009-09-04 14:01:30

C#存儲BLOB對象

2009-08-28 09:25:59

C#查看Excel對象

2009-08-20 17:13:37

C# FileSyst

2009-08-28 16:50:25

C# PromptPo

2009-08-25 16:03:51

C# SQLDMO對象

2009-08-31 09:44:23

C# Employee

2009-09-02 15:41:21

C# HTTPWebR

2009-08-25 10:08:39

C# MyData對象

2009-08-12 11:24:25

C# String對象

2009-08-19 17:12:18

C# Connecti

2009-08-31 09:37:09

C# Employee

2009-08-25 09:49:09

C#內(nèi)存Graphic

2009-08-19 11:21:02

C# ListBox控

2009-08-26 16:46:06

C# ThreadSt

2009-08-27 13:27:50

C# this保留字

2009-09-01 09:16:57

C#使用SharpZi

2009-06-24 09:52:21

哈希表
點贊
收藏

51CTO技術(shù)棧公眾號