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 ^_^)
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>
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 (m.sbmmt.com) !