类 | 结构 | |
类型 | 引用 | 值 |
声明语法 | class | struct |
new |
1、在堆中开辟空间。 2、堆中创建对象。 3、调用构造函数初始化。 |
栈中开辟空间调用构造函数 |
继承 | 可以 | 不能 |
构造函数 |
1、写了新构造函数后,默认的无参构造函数就没有了。 2、可以给字段、属性赋值。 |
1、写了新构造函数后默认的无参构造函数依然存在。 2、只能给字段赋值,且要给全部字段赋值。 |
相同点:无论结构还是类,本身都会有一个默认的无参构造函数。
如果只是单独存储数据,推荐使用结构。如果想用面向对象的思想开发程序,推荐使用类。结构并不具备面向对象的特征。