来看一个小问题!! 可以.在需要初始化的时候用NEW,也就是需要创建实例时 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TO thinkingforever(努力学习):OracleCommand Cmd=null;OracleDataReader objReader=null;objReader=Cmd.ExecuteReader();那为什么这里的DATAREADER对象,没有创建实例就对它赋值了呢? 那为什么这里的DATAREADER对象,没有创建实例就对它赋值了呢?肯定不能执行啊! 不用NEW只是定义,没有分配空间,实例化的时候用new就可以了。 建议看看引用类型和值类型的介绍:我认为 引用与c语言里的指针相似,OracleCommand Cmd该语句定义(声明)了一个引用类型的变量Cmd ,该变量用于存储对一个OracleCommand 实例的引用OracleCommand Cmd=null 将该变量的“值",设置为空--空即是什么实例也不引用(new OracleCommand ())该句指示系统创建OracleCommand的一个实例,并返回一个对实例的引用Cmd =new OracleCommand ()该句指示系统创建OracleCommand的一个实例,并返回一个对实例的引用,并将该引用赋予Cmd 一般来讲:在类,结构的定义中使用OracleCommand Cmd=null 来定义(声明)一个什么都没有引用的Cmd然后在其他地方(如初始化函数、构造函数中)将一个实例的引用赋予Cmd(Cmd =new OracleCommand ())以通过Cmd实现对实例的操作,当任何引用都不再该实例时,系统垃圾回收器将把该实例回收,释放系统资源 不用new就没有给其分配空间,所以先定义,然后在你使用它的时候给他分配空间,这样可以更好使用内存空间。 Cmd=null是无法执行的!会报错“未将对象引用到实例”! common 的引用 winform 下log4net只能输出info级别信息,无法输出debug级别的信息 求助,各位老师 有关于图片上传和保存文件的问题 模拟网页登录高分求助 如何使用 C# 禁止Word快捷键 例如:Ctrl+S ... 关于类的一个问题,大家帮看看 初学者 关于webform的数据庫操作问题!(在线等待!) 请教一个调用窗体的问题 请问在C#中怎样使用SVG? MAC地址 动态创建控件的问题 如何获取一个数据库的详细信息,包括表的个数,名字,每个表的字段,字段类型等
OracleDataReader objReader=null;objReader=Cmd.ExecuteReader();那为什么这里的DATAREADER对象,没有创建实例就对它赋值了呢?
肯定不能执行啊!
该语句定义(声明)了一个引用类型的变量Cmd ,该变量用于存储对一个OracleCommand 实例的引用
OracleCommand Cmd=null 将该变量的“值",设置为空--空即是什么实例也不引用
(new OracleCommand ())
该句指示系统创建OracleCommand的一个实例,并返回一个对实例的引用Cmd =new OracleCommand ()
该句指示系统创建OracleCommand的一个实例,并返回一个对实例的引用,并将该引用赋予Cmd 一般来讲:
在类,结构的定义中使用OracleCommand Cmd=null 来定义(声明)一个什么都没有引用的Cmd
然后在其他地方(如初始化函数、构造函数中)将一个实例的引用赋予Cmd(Cmd =new OracleCommand ())以通过Cmd实现对实例的操作,当任何引用都不再该实例时,系统垃圾回收器将把该实例回收,释放系统资源