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类的内容,更多相关内容请关注ki4网(www.ki4.cn)!