理解结构和类的不同之处
来源:互联网 发布:nba淘宝旗舰店 编辑:程序博客网 时间:2024/04/30 02:19
我们来看这样一个问题:一个Student类只有ID和年龄两个字段,那么采用哪种数据类型来存储呢?
使用类来解决:
public class Student
{
public int _id; //ID
public int _age; //年龄
public int Id
{
get{ return _id; }
set{ _id = value;}
}
public int Age
{
get{ return _age;}
set{ _age = value;}
}
}
分析以上代码,我们发现Student类具有的字段都是值类型的,而且个数比较少,对于这种类型,C#提供了结构(Structure)
这个数据类型。定义结构的语法如下:
访问修饰符 struct 结构名
{
//结构体
}
结构的特点有以下两点:
1.结构中可以有字段,也可以有方法。
2.定义结构时,结构中的字段不能被赋值。
以上代码使用结构来写:
public struct Student
{
public int _id;
public int _age;
}
在使用结构时需注意,可以不用new关键字,直接定义结构的对象即可。声明结构的对象后,必须给结构的成员赋值。
我们不难发现,结构和类极其相似,那么,是不是所有的类可以用结构来代替呢?结构是值类型,声明结构变量就是存储一个结构的副本,既要系统开辟一块新的存储空间,因此结构用的越多所消耗的空间也越多。因此,我们在使用结构时,当对象需要用较少的字段来表示时,就可以选用结构来实现。
- 理解结构和类的不同之处
- 结构名和数组名的不同之处
- New 和 GetMem 的不同之处
- New 和 GetMem 的不同之处
- New 和 GetMem 的不同之处
- DOM和IE的不同之处
- New 和 GetMem 的不同之处
- Hibernate_list和iterate的不同之处
- CCD和CMOS的不同之处
- mybatis 中 #{} 和 ${} 的不同之处
- endl和\n的不同之处
- C # 和 Java的不同之处
- 数组和指针的不同之处
- ApplicationContext和BeanFactory的不同之处
- 通知和协议的不同之处?
- python2和python3的不同之处
- 理解结构和类的区别
- 比较Hashtable类和HashMap类的不同之处
- vs2010中安装visual assist x插件
- 使用openFileOutput和openFileInput读取文件
- 数据库名、实例名、数据库域名、全局数据库名、服务名
- Jenkins+cygwin
- hdu 1150 Machine Schedule (最小点覆盖)
- 理解结构和类的不同之处
- 技巧: 配置 Apache 为 XHTML 发送正确的 MIME 类型
- DALFactory有什么作用
- (Java)微信之个人公众账号开发(一)——进入开发者模式
- 【数据结构与算法】内部排序总结(附各种排序算法源码)
- SEO关键字排名VS用户体验谁更重要?
- 【C语言编程】编写一个程序解决选择问题,令k=n/2
- ASP.NET MVC3 快速入门中学MvcMovie项目遇到的问题解决办法
- POJ 1019:Number Sequence