Maison >développement back-end >Tutoriel C#.Net >Journal d'apprentissage C# 14 --- Classe d'objets de type référence

Journal d'apprentissage C# 14 --- Classe d'objets de type référence

黄舟
黄舟original
2017-01-20 13:53:511638parcourir

Comprenons d'abord ce qu'est la classe d'objet

Classe d'objet :

La classe d'objet est la classe de base de tous les types, et tous les types en dérivent. Les classes héritent directement ou indirectement de la classe Sytem.Object (ça peut être un peu déroutant, peu importe, par exemple, si la classe Object est un tronc d'arbre, toutes les classes qu'on a apprises plus tôt sont des branches ou des feuilles, vous comprenez ). Par conséquent, n’importe quel type de valeur peut être affecté à une variable de type Objet.

Déterminer une variable Objet :

Pour déclarer une variable de type Objet, utilisez le mot-clé object ; ce mot-clé est défini dans l'espace de noms prédéfini fourni par la structure du framework .Net. alias de la classe System.object. Le format de définition est le suivant : nom de la variable objet ;

instance :

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

Résultat de sortie : (exactement le même ^_^)

Journal dapprentissage C# 14 --- Classe dobjets de type référence

Exemple d'exploration :

La définition ci-dessus de Object souligne que l'objet est la classe de base pour tous les types. Pouvons-nous donc définir une classe Struct et une classe class et les convertir en objets ? ? Dans le code ci-dessus, j'ai ajouté quelques éléments :

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>

Journal dapprentissage C# 14 --- Classe dobjets de type référence

L'exemple ci-dessus montre que le type Struct et le type Class peuvent être convertis l'un dans l'autre avec le type d'objet. Le processus de conversion est le suivant :

Struct ---->object---->struct; (seul Struct---->Object ne peut pas générer de valeurs), et il le fera. not Changez la valeur dans stu

Ce qui précède est le contenu du C# Learning Diary 14 --- objet de type référence. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn