以下情况考虑将类型声明为值类型
2010-08-08 21:07
225 查看
1、该类型的行为类似于基元类型
2、该类型不需要继承自其他类型
3、该类型不会被其他类型继承
4、该类型的实例不会频繁地用于方法的参数传递,默认情况下,参数以传值的方式传递,这样会导致值类型中的字段被拷贝,从而损伤应用程序的性能。
5、该类型的实例不会作为方法的结果频繁的返回。从方法中返回的一个值类型也会导致实例中的字段拷贝到调用者的分配的内存中,因此会损伤应用程序的性能。
6、该类型的实例不会被频繁地用于诸如 ArrayList,Hastable之类的集合中,这些管理一组通用对象集合的类会对值类型实例执行装箱操作,这将导致额外的内存分配,以及额为的内存拷贝操作,从而也会损伤应用程序性能。
2、该类型不需要继承自其他类型
3、该类型不会被其他类型继承
4、该类型的实例不会频繁地用于方法的参数传递,默认情况下,参数以传值的方式传递,这样会导致值类型中的字段被拷贝,从而损伤应用程序的性能。
5、该类型的实例不会作为方法的结果频繁的返回。从方法中返回的一个值类型也会导致实例中的字段拷贝到调用者的分配的内存中,因此会损伤应用程序的性能。
6、该类型的实例不会被频繁地用于诸如 ArrayList,Hastable之类的集合中,这些管理一组通用对象集合的类会对值类型实例执行装箱操作,这将导致额外的内存分配,以及额为的内存拷贝操作,从而也会损伤应用程序性能。
相关文章推荐
- 如果你的程序没有改动,但系统已经出现问题了,请考虑以下情况。
- 利用黑盒测试中的等价类划分完成以下题目 3、某程序规定:"输入三个非0正整数 a 、 b 、 c 分别作为三边的边长构成三角形(暂不考虑特殊三角形的情况)。请根据给出的说明,用等价类划分法进行划分,并给每个等价类规定唯一的编号。
- 以下题目均在bookstore项目上完成(请先运行数据库文件): 1、编写单元测试用例,对用户注册功能的Action层进行测试。(注意:测试用例应考虑成功和失败的情况)
- mysql大文本数据类型的使用需要考虑实际情况
- mysql大文本数据类型的使用需要考虑实际情况
- 默认情况下,sql server2005安装完后,xp_cmdshell是禁用的(可能是安全考虑),如果要使用它,可按以下步骤
- 可选int参数'cid'存在,但由于被声明为基本类型而无法转换为空值。考虑将其声明为相应基元类型的对象包装。
- 关于函数声明和调用时参数类型不一致的情况
- sql 在有数据的情况下更改列的数据类型 (sql alter column)
- Objective-C 基础,类和对象,方法和消息,已声明的属性和存取方法,块对象,协议和范畴类,预定义类型和编码策略
- MySQL在以下几种情况会创建临时表
- [LeetCode]Insert Interval 考虑多种情况
- 理解c和c ++的复杂类型声明
- 二维数组的列排序 考虑问题的全局性 声明数组必须要分配内存并清零
- (转载)如何理解c和c++ 的复杂类型声明
- 以下判断数据库类型并创建相应的对象
- 滤了asa,cer,cdx,php,aspx等脚本类型的上传情况下添加一个ashx的上传类型
- sleep 在此作用域未声明,这算什么情况?
- 不考虑花色情况下的炸金花扑克牌比大小
- 输入循环在什么情况下结束,while(cin>>word) 类型?