类和结构体的区别

1.类是引用类型,结构是值类型;类被存储在堆上,结构存储在栈上。

2.类中包含的成员:字段,属性,方法,构造函数。
结构中的成员:字段,属性,静态和非静态方法,构造函数。
类中的构造函数既可以给字段赋值,也可以给属性赋值;结构中的构造函数只能给字段赋值。且结构的构造函数需要对全部的字段赋值,不能选择性的给字段赋值。

3.结构中new一个对象时,不能在堆中开辟空间,因为结构是值类型,只能在栈上开辟空间。

4.结构和类本身都具有一个默认的构造函数。类中显示的定义构造函数,则默认的构造函数消失,而在结构中,显示的定义构造函数,默认的构造函数仍然存在。

5.结构中的静态方法只能用结构名调用,但结构中的非静态成员,使用对象名调用。

6.如果是单纯的存储数据,推荐使用结构,然而要实现面向对象的功能则使用类来实现。

 23:32:10

原文地址:https://www.cnblogs.com/jefy/p/9161780.html