C#靜態方法使用經驗淺談
C#靜態方法有什么弊端? 我們在實際的開發過程中會注意到C#靜態方法對于我們程序的影響,那么有哪些C#靜態方法使用的體會呢?這里我們來看看一些方面:
C#靜態方法使用中遇到的問題:
在源碼工程中幾乎沒有看到什么靜態方法,但是在Ms的SQLHelper中幾乎全部使用的是靜態方法,為什么會這樣呢?我們來看看有以下的幾種可能:
1、在一些系統中使用非常頻繁的方法都使用靜態方法可以提高系統性能我是這么認為的 :)
2、本身不可升級, 重寫 這要看一個軟件產品的目的是什么了.
3、為了方便,不用實例化,但這樣程序編譯運行時就占用了系統資源
4、C#靜態方法及屬性在程序啟動的時候,就全部裝入內存的,而不管這些方法、屬性以后有沒有用到。即使是沒有人再訪問程序,這部分內存仍然不會釋放還有就是,所有訪問者看到的靜態屬性的數據幾乎都是一樣的,比如A用戶設置了UserName這個屬性,B用戶訪問的時候,得到的UserName仍然是A用戶設置的那個。這種特性,如果用在固定數據中,那不會有太大問題,比如連接字符串之類的
5、C#靜態方法/數據成員是屬于類的,不是屬于某一個對象的,因而調用它不需要實例化;靜態方法和靜態數據成員相當于共享變量。為該類的所有對象所共有,因而在需要共享數據時,定義這種類型時很好的選擇。 一但定義一個類后(不一定要實例化對象)該類的所有靜態成員就載入內存(并不是程序啟動,就裝入內存,沒有定義該類時它不會載入內存) 靜態成員的作用域與它所屬的類的作用域相同
C#靜態方法的使用情況的一些相關內容就向你介紹到這里,希望對你學習和使用C#靜態方法有所幫助。
【編輯推薦】