新聞中心
C#靜態(tài)方法有什么弊端? 我們在實際的開發(fā)過程中會注意到C#靜態(tài)方法對于我們程序的影響,那么有哪些C#靜態(tài)方法使用的體會呢?這里我們來看看一些方面:

C#靜態(tài)方法使用中遇到的問題:
在源碼工程中幾乎沒有看到什么靜態(tài)方法,但是在Ms的SQLHelper中幾乎全部使用的是靜態(tài)方法,為什么會這樣呢?我們來看看有以下的幾種可能:
1、在一些系統(tǒng)中使用非常頻繁的方法都使用靜態(tài)方法可以提高系統(tǒng)性能我是這么認為的 :)
2、本身不可升級, 重寫 這要看一個軟件產(chǎn)品的目的是什么了.
3、為了方便,不用實例化,但這樣程序編譯運行時就占用了系統(tǒng)資源
4、C#靜態(tài)方法及屬性在程序啟動的時候,就全部裝入內(nèi)存的,而不管這些方法、屬性以后有沒有用到。即使是沒有人再訪問程序,這部分內(nèi)存仍然不會釋放還有就是,所有訪問者看到的靜態(tài)屬性的數(shù)據(jù)幾乎都是一樣的,比如A用戶設(shè)置了UserName這個屬性,B用戶訪問的時候,得到的UserName仍然是A用戶設(shè)置的那個。這種特性,如果用在固定數(shù)據(jù)中,那不會有太大問題,比如連接字符串之類的
5、C#靜態(tài)方法/數(shù)據(jù)成員是屬于類的,不是屬于某一個對象的,因而調(diào)用它不需要實例化;靜態(tài)方法和靜態(tài)數(shù)據(jù)成員相當于共享變量。為該類的所有對象所共有,因而在需要共享數(shù)據(jù)時,定義這種類型時很好的選擇。 一但定義一個類后(不一定要實例化對象)該類的所有靜態(tài)成員就載入內(nèi)存(并不是程序啟動,就裝入內(nèi)存,沒有定義該類時它不會載入內(nèi)存) 靜態(tài)成員的作用域與它所屬的類的作用域相同
C#靜態(tài)方法的使用情況的一些相關(guān)內(nèi)容就向你介紹到這里,希望對你學習和使用C#靜態(tài)方法有所幫助。
【編輯推薦】
- C#數(shù)組初始化的應(yīng)用實例解析
- C#一維數(shù)組初始化詳解
- C#數(shù)組初始化的三大方法詳解
- C#靜態(tài)函數(shù)及變量學習總結(jié)淺析
- 淺析什么是C#靜態(tài)方法
新聞標題:C#靜態(tài)方法使用經(jīng)驗淺談
標題路徑:http://www.dlmjj.cn/article/coppegp.html


咨詢
建站咨詢
