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