程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> C#托管堆對象實例包括內容剖析

C#托管堆對象實例包括內容剖析

編輯:C#入門知識

C#托管堆對象實例包括內容剖析。本站提示廣大學習愛好者:(C#托管堆對象實例包括內容剖析)文章只能為提供參考,不一定能成為您想要的結果。以下是C#托管堆對象實例包括內容剖析正文


本文以實例情勢剖析了C#托管堆對象實例包括的內容,有助於進一步懂得C#法式設計中的托管對象。分享給年夜家供年夜家參考。詳細剖析以下:

平日來講,每一個托管堆上的對象實例除包括自己的值外,還包含:

① Type Object Ponter: 指向Type對象實例。假如是同類型的對象實例,就指向統一個Type對象實例。

② Sync Block Index:在多線程情形下用來掌握同步

以下實例所示:

namespace ConsoleApplication1
{
  class Program
  {
    static void Main(string[] args)
    {
      Cow cow1 = new Cow();
      cow1.mooCount = 1;
      Cow cow2 = new Cow();
      cow2.mooCount = 2;
      Type t1 = cow1.GetType();
      Type t2 = cow2.GetType();
      Console.WriteLine(t1.FullName);
      Console.WriteLine(t2.FullName);
    }
  }
  public class Cow
  {
    public int mooCount;
  }
}

運轉成果:
ConsoleApplication1.Cow
ConsoleApplication1.Cow

○ 挪用對象實例的GetType辦法,可以獲得到Type類型對象,這就是所謂的反射
○ 以上的cow1和cow2的類型都是Cow,所以這2個實例指向統一個Type對象

用圖形表現的話以下圖所示:

別的,當值類型挪用GetType辦法時,會在托管堆上創立box,並有Type Object Pinter。

願望本文所述對年夜家C#法式設計的進修有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved