黑马程序员技术交流社区

标题: 在.NET中类与结构的区别 [打印本页]

作者: redlong    时间: 2014-4-3 19:42
标题: 在.NET中类与结构的区别
本帖最后由 redlong 于 2014-4-5 23:22 编辑

如题所示,结构与类的区别是什么

作者: 回忆~坚    时间: 2014-4-3 19:48
结构是值类型,传递时是复制的;
类是引用类型,传递时是传存放地址;
作者: 李恒权    时间: 2014-4-3 22:57
区别:
1、在结构声明中,除非字段被声明为 const 或 static,否则无法初始化。
2、结构不能声明默认构造函数(没有参数的构造函数)。
3、结构在赋值时进行复制。 将结构赋值给新变量时,将复制所有数据,并且对新副本所做的任何修改不会更改原始副本的数据。
4、结构是值类型,而类是引用类型。
5、与类不同,结构的实例化可以不使用 new 运算符。
6、结构可以声明带参数的构造函数。
7、一个结构不能从另一个结构或类继承,而且不能作为一个类的基。
8、所有结构都直接继承自 System.ValueType,后者继承自 System.Object。
9、结构可以实现接口。
10、结构可用作可以为 null 的类型,因而可向其赋 null 值。
作者: Kaitong    时间: 2014-4-3 23:14
1.    类有构造和析构函数
       类可以继承和被继承。
2.    结构没有构造函数,但可以添加。
       结构没有析构函数结构不可以继承自另一个结构或被继承,但和类一样可以继承自接口。
       在一些轻量级的对象常使用结构,在数据量大或有复杂处理逻辑对象使用类较多。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2