自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C#靜態(tài)方法與非靜態(tài)方法的比較

開發(fā) 后端
C#靜態(tài)方法與非靜態(tài)方法的區(qū)別不僅僅是概念上的,那么他們有什么具體的區(qū)別呢?讓我們通過本文向你做一下解析。

C#的類中可以包含兩種方法:C#靜態(tài)方法與非靜態(tài)方法。那么他們的定義有什么不同呢?他們在使用上會有什么不同呢?讓我們來看看最直觀的差別:使用了static 修飾符的方法為靜態(tài)方法,反之則是非靜態(tài)方法。

下面我們分四個方面來看看C#靜態(tài)方法與非靜態(tài)方法的差異:

C#靜態(tài)方法與非靜態(tài)方法比較一、C#靜態(tài)成員:

①靜態(tài)成員屬于類所有,非靜態(tài)成員屬于類的實例所有。

②每創(chuàng)建一個類的實例,都會在內存中為非靜態(tài)成員新分配一塊存儲;

非靜態(tài)成員屬于類所有,為各個類的實例所公用,無論類創(chuàng)建了多少實例,

類的靜態(tài)成員在內存中只占同一塊區(qū)域。

C#靜態(tài)方法與非靜態(tài)方法比較二、C#靜態(tài)方法

1、C#靜態(tài)方法屬于類所有,類實例化前即可使用。

2、非靜態(tài)方法可以訪問類中的任何成員,靜態(tài)方法只能訪問類中的靜態(tài)成員。

3、因為靜態(tài)方法在類實例化前就可以使用,而類中的非靜態(tài)變量必須在實例化之后才能分配內存,

這樣,C#靜態(tài)方法調用時無法判斷非靜態(tài)變量使用的內存地址。所以無法使用。而靜態(tài)變量的地址對類來說是固定的,故可以使用。

C#靜態(tài)方法與非靜態(tài)方法比較三、C#靜態(tài)方法是一種特殊的成員方法

它不屬于類的某一個具體的實例,而是屬于類本身。所以對靜態(tài)方法不需要首先創(chuàng)建一個類的實例,而是采用類名.靜態(tài)方法的格式 。

1.static方法是類中的一個成員方法,屬于整個類,即不用創(chuàng)建任何對象也可以直接調用!

static內部只能出現(xiàn)static變量和其他static方法!而且static方法中還不能使用this....等關鍵字..因為它是屬于整個類!

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

3.靜態(tài)方法和靜態(tài)變量創(chuàng)建后始終使用同一塊內存,而使用實例的方式會創(chuàng)建多個內存.

4.C#中的方法有兩種:實例方法,靜態(tài)方法.

C#靜態(tài)方法與非靜態(tài)方法比較四、C#靜態(tài)方法中獲取類的名稱

靜態(tài)方法中用:

  1. string className =   
  2. System.Reflection.MethodBase.  
  3. GetCurrentMethod().ReflectedType.FullName; 

非靜態(tài)方法中還可以用:

  1. string className = this.GetType().FullName;  

C#靜態(tài)方法與非靜態(tài)方法的區(qū)別解析旨在詮釋C#靜態(tài)方法的含義,希望對你了解和學習C#靜態(tài)方法與非靜態(tài)方法有所幫助。

【編輯推薦】

  1. C#數(shù)組初始化的三大方法詳解
  2. C#靜態(tài)函數(shù)及變量學習總結淺析
  3. 淺析什么是C#靜態(tài)方法
  4. C#靜態(tài)方法使用經驗淺談
  5. C#靜態(tài)方法概念解析實例
責任編輯:仲衡 來源: 博客園
相關推薦

2009-08-28 12:31:06

C#靜態(tài)方法

2009-08-28 12:47:30

C#靜態(tài)方法應用

2009-08-28 12:19:19

C#靜態(tài)方法

2009-08-28 12:25:58

C#靜態(tài)方法

2010-08-13 09:35:08

C#靜態(tài)

2009-08-31 09:41:05

C#反射靜態(tài)方法開發(fā)

2011-06-02 14:25:45

靜態(tài)變量

2009-08-27 16:00:03

C#靜態(tài)字段C#實例字段

2009-08-28 14:09:19

C#靜態(tài)類

2011-07-06 17:11:41

ASP

2009-07-31 15:44:02

C#靜態(tài)構造函數(shù)

2009-07-31 15:37:45

C#靜態(tài)構造函數(shù)

2009-08-20 14:28:00

C#靜態(tài)構造函數(shù)

2023-10-07 15:53:05

C/C++靜態(tài)變量內存

2024-11-07 12:37:17

2010-09-16 09:12:20

JavaC#

2009-11-17 09:07:55

靜態(tài)構造函數(shù)

2011-06-14 12:27:38

C#C++

2011-06-11 21:36:44

C#C++

2009-08-27 10:44:21

C#靜態(tài)變量
點贊
收藏

51CTO技術棧公眾號