a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

c#靜態方法和非靜態方法詳細介紹

2020-01-24 02:48:41
字體:
來源:轉載
供稿:網友
C#的類中可以包含兩種方法:靜態方法和非靜態方法。
使用了static 修飾符的方法為靜態方法,反之則是非靜態方法。
靜態方法是一種 特殊的成員方法,它不屬于類的某一個具體的實例,而是屬于類本身。
所以對靜態方法不需要 首先創建一個類的實例,而是采用類名.靜態方法的格式 。
1.static方法是類中的一個成員方法,屬于整個類,即不用創建任何對象也可以直接調用!
static內部只能出現static變量和其他static方法!而且static方法中還不能使用this....等關鍵字..因為它是 屬于整個類!
2.靜態方法效率上要比實例化高,靜態方法的缺點是不自動進行銷毀,而實例化的則可以做銷毀。
3.靜態方法和靜態變量創建后始終使用同一塊內存,而使用實例的方式會創建多個內存.
4.C#中的方法有兩種:實例方法,靜態方法. 類的方法代碼只有一份,它們的生命周期和類是一致的.實例方法是通過對象名調用的,靜態方法與類關聯而不是 與對象名關聯.
5.那么在程序中什么地方可以利用靜態字段和靜態構造方法,通常適用于于一些不會經常變化而又頻繁使用的數 據,比如連接字符串,配置信息等,當滿足上面所 說的兩點時,進行一次讀取,以后就可以方便的使用了,同 時也節約了托管資源,因為對于靜態成員,一個靜態字段只標識一個存儲位置。
對一個類無論創建了多少 個實 例,它的靜態字段永遠都只有一個副本(副本我理解為只有一塊內存 靜態成員存在于內存,非靜態成員需要實例化才會分配內存,所以靜態成員不能訪問非靜態的成員..因為靜態成員 存在于內存,所以非靜態成員可以直接訪問類中靜態的成員.
公用的處理函數,使用靜態方法應該沒有問題..牽涉 到數據共享,靜態變量的函數要多考慮...靜態變量要小心使用..
靜態方法 原理就是共享代碼段 共享代碼段不會產生任何問題 因為代碼段都是給CPU作為"讀取"用的,除非你進行惡意"修改"運行時的代碼段 所以靜態方法是可以放心使用的
靜態變量 原理就是共享數據段 同上 只要沒有進行"寫入"操作就不會產生問題 但是數據通常都是用于讀和寫 所以靜態變量要注意使用
下面是一個使用靜態方法的例子
復制代碼 代碼如下:

class Class1 {
[STAThread]
static void Main(string[] args)
{
int i = MyClass.Add(3,5); //調用靜態方法
Console.WriteLine(i);
}
}
class MyClass
{
public static int Add(int x,int y )
{ return x + y ;
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 综合中文字幕 | 日韩久久精品 | 国产成人毛片 | 亚洲精品久久 | 日韩三级视频 | 国产91九色一区二区三区 | 中文天堂av | 日日夜夜天天 | 国产伦理一区二区 | 久久国产精品免费一区二区三区 | 精品久久一区二区三区 | 一区二区三区四区在线播放 | 欧美激情视频免费观看 | 高清视频一区二区 | 日本污视频在线观看 | 免费v片| 日本三级电影天堂 | 操操日 | 中文字幕国产 | 亚洲精品在线视频 | 欧美视频在线播放 | 日本久久久久久久 | 色999视频| 日韩色影视 | 成人国产精品久久 | 欧美韩日精品 | 亚洲国产成人综合 | 狠狠骚 | 日批免费视频 | av网站在线免费观看 | 国产日韩精品一区二区 | 黄色综合网站 | 青青草一区二区 | 日韩一区二区在线观看 | av免费在线播放 | 欧美精品一区三区 | 日韩欧美中文在线 | 日本一级二级三级久久久 | 在线观看国产视频 | www.久久99| 国产伦精品久久久一区二区三区 |