C#类和C#结构体有什么关系

本篇内容主要讲解“C#类和C#结构体有什么关系”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#类和C#结构体有什么关系”吧!

公司主营业务:网站制作、成都做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联建站是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联建站推出额敏免费做网站回馈大家。

C#类:类是C# 中功能最为强大的数据类型,类也定义了数据类型的数据和行为。然后,程序员可以创建作为此类的实例的对象。

C#结构体:结构体是轻量型的类,使用开销相对于类较小。

C#类和C#结构体两者的关系:

1.数据类型:类和结构体都是数据类型,类是引用类型,结构体是值类型。

2.继承性:类可以继承和被继承,而结构体隐式继承于object,不可以继承(除接口以外)和被继承

3.构造函数:类和结构体都有默认(无参)构造函数,只不过结构体不能显示声明默认(无参)构造函数,

4.字段初始化:类可以对字段声明时赋值初始化,而结构体不可以(除const和static之外),结构体的字段必须在构造函数中进行初始化。

5.实例化:结构体实例化时可以不使用new,,如果不使用new,那么在初始化所有字段之前,字段将保持未赋值状态且对象不可用。而类必须使用new进行实例化。

如何选择C#结构体还是C#类  

讨论了结构与类的相同之处和差别之后,下面讨论如何选择使用结构还是类:  

1.堆栈的空间有限,对于大量的逻辑的对象,创建类要比创建结构好一些  

2.结构表示如点、矩形和颜色这样的轻量对象,例如,如果声明一个含有   1000   个点对象的数组,则将为引用每个对象分配附加的内存。在此情况下,结构的成本较低。  

3.在表现抽象和多级别的对象层次时,类是***的选择 

4.大多数情况下该类型只是一些数据时,结构时***的选择 ,struct 类型是一种值类型,通常用来封装小型相关变量组,例如,矩形的坐标或库存商品的特征。 

到此,相信大家对“C#类和C#结构体有什么关系”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


文章名称:C#类和C#结构体有什么关系
转载来于:http://pwwzsj.com/article/jeeegc.html