Heim  >  Artikel  >  Backend-Entwicklung  >  C#-Lerntagebuch 14 --- Objektklasse vom Referenztyp

C#-Lerntagebuch 14 --- Objektklasse vom Referenztyp

黄舟
黄舟Original
2017-01-20 13:53:511599Durchsuche

Lassen Sie uns zunächst verstehen, was die Objektklasse ist

Objektklasse:

Die Objektklasse ist die Basisklasse aller Typen, und alle Typen werden von ihr abgeleitet. Alle Typen in C#. Klassen erben direkt oder indirekt von der Sytem.Object-Klasse (es kann etwas verwirrend sein, es spielt keine Rolle, wenn die Object-Klasse beispielsweise ein Baumstamm ist, sind alle Klassen, die wir zuvor gelernt haben, Zweige oder Blätter, verstehen Sie? ). Daher kann einer Variablen vom Typ Objekt jede Art von Wert zugewiesen werden.

Bestimmen Sie eine Objektvariable:

Um eine Variable vom Typ Objekt zu deklarieren, verwenden Sie das Schlüsselwort object. Dieses Schlüsselwort wird im vordefinierten Namespace System definiert, der von der .Net-Framework-Struktur bereitgestellt wird Alias ​​der Klasse System.object. Das Definitionsformat ist wie folgt: Objektvariablenname;

Instanz:

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);   
              
        }  
    }  
}

Ausgabeergebnis: (genau das gleiche ^_^)

C#-Lerntagebuch 14 --- Objektklasse vom Referenztyp

Beispieluntersuchung:

Die obige Definition von Object betont, dass object die Basisklasse für alle Typen ist. Können wir also eine Struct-Klasse und eine Klassenklasse definieren und sie in Objekte konvertieren? ? Im obigen Code habe ich einige Elemente hinzugefügt:

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>

C#-Lerntagebuch 14 --- Objektklasse vom Referenztyp

Das obige Beispiel zeigt, dass der Strukturtyp und der Klassentyp mit ineinander konvertiert werden können Objekttyp. Der Konvertierungsprozess ist wie folgt:

Struct ---->object---->struct; (Nur Struct---->Object kann während der Konvertierung keine Werte ausgeben). Prozess, es wird den Wert in stu nicht ändern

Das Obige ist der Inhalt des C# Learning Diary 14---Referenztypobjekts. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php .cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn