A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 宋健 中级黑马   /  2013-3-11 21:34  /  1965 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 宋健 于 2013-3-12 12:43 编辑

类和结构有很多相似的地方,我只知道类是引用类型,结构是值类型,请问他们具体的区别。
谢谢。

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

4 个回复

倒序浏览
结构是值类型,值再栈上  一次声明多个不同类型的变量
结构中可以有字段,也可以有属性,可以有方法有静态成员
结构也有一个默认的没有参数的构造函数
结构中的构造函数必须要给字段赋值 不能给属性赋值
结构中的构造函数中不能没有参数
结构中的构造函数鼻血给所有字段赋值
结构不能继承 但是类可以继承
类是引用类型

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
类和结构区别:

类是引用类型在堆上分配,类的实例进行赋值只是复制了引用,都指向同一段实际对象分配的内存;
结构是值类型在栈上分配(虽然栈的访问速度比较堆要快,但栈的资源有限放),结构的赋值将分配产生一个新的对象。

类有构造和析构函数,结构没有构造函数,但可以添加。结构没有析构函数

类可以继承和被继承,结构不可以继承自另一个结构或被继承,但和类一样可以继承自接口

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
结构和类的区别
1、结构属于值类型的,类属于引用类型的。结构也可以有字段、属性和方法,甚至还可以
   有类,但是类没有用。
2、结构,用于一次声明多个不同类型的变量。结构中也有一个默认的没有参数的构造函
   数。
3、结构的构造函数中必须给字段赋值,不能给属性赋值,构造函数必须有参数。
4、结构不可以继承,类可以继承。
5、

评分

参与人数 1技术分 +1 收起 理由
张文 + 1

查看全部评分

回复 使用道具 举报
类和结构是两个完全不同的概念

首先,结构是指将多种变量同时定义的一个小组
比如,我定义了一个结构,这个结构下,我可以定义它的一些各种参数
结构是用来存储数据的

而类,则是一个种类的统称,这个种类下,既包含属性,又包含方法。
这个概念是抽象的,你可以随时引用里面的方法以及属性

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马