黑马程序员技术交流社区

标题: 请问类和结构的区别 [打印本页]

作者: 宋健    时间: 2013-3-11 21:34
标题: 请问类和结构的区别
本帖最后由 宋健 于 2013-3-12 12:43 编辑

类和结构有很多相似的地方,我只知道类是引用类型,结构是值类型,请问他们具体的区别。
谢谢。
作者: 边亮    时间: 2013-3-11 21:40
结构是值类型,值再栈上  一次声明多个不同类型的变量
结构中可以有字段,也可以有属性,可以有方法有静态成员
结构也有一个默认的没有参数的构造函数
结构中的构造函数必须要给字段赋值 不能给属性赋值
结构中的构造函数中不能没有参数
结构中的构造函数鼻血给所有字段赋值
结构不能继承 但是类可以继承
类是引用类型
作者: 余攀    时间: 2013-3-11 21:43
类和结构区别:

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

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

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

作者: luxun1912    时间: 2013-3-11 21:44
结构和类的区别
1、结构属于值类型的,类属于引用类型的。结构也可以有字段、属性和方法,甚至还可以
   有类,但是类没有用。
2、结构,用于一次声明多个不同类型的变量。结构中也有一个默认的没有参数的构造函
   数。
3、结构的构造函数中必须给字段赋值,不能给属性赋值,构造函数必须有参数。
4、结构不可以继承,类可以继承。
5、

作者: 朱传波    时间: 2013-3-12 15:21
类和结构是两个完全不同的概念

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

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






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