黑马程序员技术交流社区
标题:
在DotNet中class和struct的异同?
[打印本页]
作者:
资建文
时间:
2012-8-26 15:10
标题:
在DotNet中class和struct的异同?
在DotNet中class和struct的异同是什么啊?
作者:
许庭洲
时间:
2012-8-26 15:45
1,struct成员默认访问权限是public;
2. class成员默认访问权限是private;
3. struct 是值类型;
4. class 是对象类型。
作者:
李 玉林
时间:
2012-8-26 17:52
struct是值类型
class是引用类型
构造函数的使用方法不同
作者:
mjbtdym
时间:
2012-9-5 07:15
相同点:语法类似
不同点
•class是引用类型 struct是值类型 class表现为行为;而struct常用于存储数据
•class支持继承,可以继承自类和接口 struct没有继承性 struct支持接口继承
•class可以声明无参构造函数,可以声明析构函数;而struct只能声明带参数构造函数,且不能声明析构函数
•实例化时,class要使用new关键字;而struct可以不使用new关键字
•class可以声明protected成员、virtual成员、sealed成员和override成员;而struct不可以,但是值得注意的是,struct可以重载System.Object的3个虚方法,Equals()、ToString()和GetHashTable()。
•class实例由垃圾回收机制来保证内存的回收处理;而struct变量使用完后立即自动解除内存分配。
•作为参数传递时,class变量是以按址方式传递;而struct变量是以按值方式传递的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2