一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

C#靜態方法與非靜態方法實例分析

本文實例分析了C#靜態方法與非靜態方法,并對其用法進行了較為全面的分析。分享給大家供大家參考。具體分析如下:

通常來說,C#的類中可以包含兩種方法:靜態方法和非靜態方法。

使用了static 修飾符的方法為靜態方法,反之則是非靜態方法

靜態方法是一種特殊的成員方法,它不屬于類的某一個具體的實例,而是屬于類本身。所以對靜態方法不需要首先創建一個類的實例,而是采用 類名.靜態方法 的格式 。

1)static方法是類中的一個成員方法,屬于整個類,即不用創建任何對象也可以直接調用。
static內部只能出現static變量和其他static方法,而且static方法中還不能使用this等關鍵字,因為它是屬于整個類。

2)靜態方法效率上要比實例化高,靜態方法的缺點是不自動進行銷毀,而實例化的則可以做銷毀。

3)靜態方法和靜態變量創建后始終使用同一塊內存,而使用實例的方式會創建多個內存。

4)那么在程序中什么地方可以利用靜態字段和靜態構造方法,通常適用于于一些不會經常變化而又頻繁使用的數據,比如連接字符串,配置信息等,當滿足上面所說的兩點時,進行一次讀取,以后就可以方便的使用了,同時也節約了托管資源,因為對于靜態成員,一個靜態字段只標識一個存儲位置。對一個類無論創建了多少個實例,它的靜態字段永遠都只有一個副本。

靜態成員存在于內存,非靜態成員需要實例化才會分配內存,所以靜態成員不能訪問非靜態的成員。因為靜態成員存在于內存,所以非靜態成員可以直接訪問類中靜態的成員。公用的處理函數,使用靜態方法應該沒有問題,牽涉到數據共享,靜態變量的函數要多考慮,靜態變量要小心使用。

靜態方法:
原理就是共享代碼段;
共享代碼段不會產生任何問題;
因為代碼段都是給CPU作為"讀取"用的,除非你進行惡意"修改"運行時的代碼段;
所以靜態方法是可以放心使用的;

靜態變量:
原理就是共享數據段;
只要沒有進行"寫入"操作就不會產生問題,但是數據通常都是用于讀和寫,所以靜態變量要注意使用;

下面是一個使用靜態方法的簡單例子:

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{ class Program { static void Main(string[] args) {  int i = MyClass.Add(7, 11); //調用靜態方法  Console.WriteLine(i);  Console.ReadKey(); } } class MyClass { public static int Add(int x, int y) {  return x + y; } }}
輸出結果:18

希望本文所述對大家C#程序設計的學習有所幫助。

php技術C#靜態方法與非靜態方法實例分析,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美福利小视频 | 偷偷碰偷偷鲁免费视频 | 色狠狠成人综合网 | 99色亚洲| 亚洲卡5卡6卡7国色天香 | 91精品国产91久久久久久最新 | 欧美久久精品一级c片片 | 成人国产精品视频 | 综合色88| 欧美精品色视频 | 久久综合亚洲一区二区三区 | 久久er精品热线免费 | 日产一一到六区麻豆 | 午夜看片网址 | 大香网伊人久久综合观看 | 视频黄色在线 | 小毛片 | www.av网| 四虎影视永久在线 yin56xyz | 久久亚洲aⅴ精品网站婷婷 久久亚洲不卡一区二区 | 免费观看国产一区二区三区 | 亚洲国产一区二区在线 | 日本精品久久久久久久久免费 | 伊人首页 | 久久无码精品一区二区三区 | 国产成综合 | 国产一区二区三区高清 | 二区三区在线 | 91久久亚洲国产成人精品性色 | 2020国产成人免费视频 | 日韩中文字幕在线有码视频网 | 国产精品好好热在线观看 | 97日韩| 色婷婷综合久久久久中文一区二区 | 91精品福利观看 | 污免费观看 | 欧美日韩激情一区二区三区 | 四虎影视国产在线观看精品 | 国产成人精品视频免费 | 久久久久久久久久久大尺度免费视频 | 久久久综合中文字幕久久 |