C#學習日記14---參考型別 之 object類

來源:互聯網
上載者:User
先讓我們瞭解下什麼叫object類

Object類:

object類是所有類型的基類,所有類型都是由他派生而來,C#中所有的類都是直接或間接的從Sytem.Object類中繼承,(可能有點迷糊,沒關係,舉個例子,如果Object類是樹榦,我們前面所學的所有類就是 樹枝 或者 樹葉 了懂了吧)。因此,對Object類型的變數可以賦予任何類型的值。

定一個Object變數:

對Object類型的變數聲明,採用 object 關鍵字;這個關鍵字是在.Net架構結構為我們提供的預定義名字空間System中定義的,是類System.object 的別名。定義格式是這樣:object 變數名;

執行個體:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace Test  {        class Program      {           static void Main(string[] args)          {              object Int,Str,Doub,Ch;    //定義4個object變數              Int = 1;                   //整形賦值成功                Str = "HC666";             //string類型賦值成功              Doub = 12.32;             //double 類型賦值成功              Ch = '男';               //char 類型賦值成功              Console.WriteLine("Int = {0}\tStr = {1}\tDoub = {2}\tch = {3}",Int,Str,Doub,Ch);                         }      }  }

輸出結果:(完全一致^_^)

執行個體探索:

上面Object的定義中強調了,object是對所有的類型的基類,那我們定義一個Struct類與class類也可以轉化成object嗎?? 在上面的代碼我加入了一些元素:

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace Test  {        class Program      {          public struct Student          {             public string name;             public char sex;             public uint age;          }          static void Main(string[] args)          {             Student stu = new Student{ name = "HC666",sex = '男',age = 19 };  //初始化 stu                object m = stu;                 //將stu轉換為object類型的對象m               Student x = (Student)m;         //將object類型的對象m 轉換為Student x 要用強制轉換                          Console.WriteLine("name:{0}\tsex:{1}\tage:{2}",x.name,x.sex,x.age);                                    }      }  }
<span style="font-size:18px;">結果是這樣的:</span>

通過以上例子說明Struct類型與Class類型是可以與object類型相互轉化的,其轉化過程是這樣:

Struct ---->object---->struct;(只有Struct---->Object是不能輸出值的),在轉化過程中不會改變stu中的值

以上就是C#學習日記14---參考型別 之 object類的內容,更多相關內容請關注topic.alibabacloud.com(www.php.cn)!

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.