百科狗-知识改变命运!
--

类和结构的区别

是丫丫呀9个月前 (12-19)阅读数 5#综合百科
文章标签官能团结构

1、存储类型:结构是值类型,存储在栈上。类是引用类型,存储在栈上和堆上,堆上存储真实数据,栈上存储存储地址,修改一个引用的值,另一个相同的引用的值就会发生改变。

2、继承性:类是可以继承的,它可以继承其他的类或者接口,也可以被继承,并且,类的许多特性是通过继承来展现的,要阻止类的继承,必须显示的声明sealed。结构没有继承:它不能继承另一个结构或者类,也不能被继承。也正因为如此,结构不能有抽象成员。虽然结构没有明确的用sealed声明,可是结构是隐式的。结构能够继承接口,方法和类继承接口是一样的。

3、初始化:类可以在声明的时候初始化,结构不能在申明的时候初始化(不能在结构中初始化字段),否则报错。

4、构造函数:类和结构都有自己默认的构造函数。在类中,一旦我们编写了带参数构造函数,默认构造函数就不存在了。当我们要调用不带参数的构造函数来初始化对象时,我们必须再自己编写一个不带参数的构造函数。但是在结构中,始终存在一个不带参数的默认构造函数,并且,这个构造函数是不可替代的,不能重写,也不能覆盖,在结构中,我们只能编写带参数的构造函数,不能编写不带参数的构造函数。

5、析构函数:类有析构函数,但是结构没有析构函数。

6、关键字:在类中可以使用但是在结构中限制使用的关键字有:abstract、sealed、protected;StaTIc关键字可以用在类名前面用来声明静态类,但是不能用在struct前面,不存在静态结构。

扩展资料

使用说明

结构存储在栈中,而栈有1个特点,就是空间较小,但是访问速度较快,堆空间较大,但是访问速度相对较慢。所以当我们描述1个轻量级对象的时候,可以将其定义为结构来提高效率。比如点,矩形,颜色,这些对象是轻量级的对象,因为描述他们,只需要少量的字段。当描述1个重量级对象的时候,我们知道类的对象是存储在堆空间中的,我们就将重量级对象定义为类。 他们都表示可以包含数据成员和函数成员的数据结构。

与类不同的是,结构是值类型并且不需要堆分配。结构类型的变量直接包含结构的数据,而类类型的变量包含对数据的引用(该变量称为对象)。 struct 类型适合表示如点、矩形和颜色这样的轻量对象。尽管可能将一个点表示为类,但结构在某些方案中更有效。在一些情况下,结构的成本较低。例如,如果声明一个含有 1000 个点对象的数组,则将为引用每个对象分配附加的内存。所以结构适合表示1个轻量级对象。

参考资料百度百科-类

有机化合物按结构不同的基本类型有:

烷烃(饱和碳链);

烯烃:官能团是双键;

炔烃:官能团是三键;

芳香烃:官能团是苯环;

卤代烃:官能团是卤素;

醇:官能团是羟基;

酚:官能团是:苯环上的羟基;

醚:官能团是一O一.

类和结构的区别

醛:官能团是HC=O;

酮:官能团是羰基;

羧酸:官能团是 - COOH;

酯:官能团是 - COOR, R表示烷基。

环烷烃,官能团是各种不同碳数目的环烷烃。

杂环化合物:包括O, N, S 以及上述混合元素的杂环化合物。

内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,本着为中国教育事业出一份力,发布内容不收取任何费用也不接任何广告!)