新手,刚刚接触C#。想询问一下C#中使用new来创建一个实例和直接声明一个实例的区别是什么?我四处查找了一下只看出来使用new的时候会在堆中开辟一块内存,直接声明时会在栈中储存。
除此之外的区别是什么?
关于#c##的问题:想询问一下C#中使用new来创建一个实例和直接声明一个实例的区别是什么
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- 是wyy 2022-12-16 23:57关注
声明一个对象引用的格式:类名 对象名;
声明语句中的对象名作为一个引用类型变量,存储的并不是实际对象,存储的是实际对象在内存中的地址,此时真正的对象并没有被创建,对象名的值为null。未指向内存中的任何地址。如代码声明一个Reader类的对象引用Tom:Reader Tom;还需要使用new来创建对象,通过赋值语句将之前声明的对象Tom与创建的这个对象建立关联,通常说让对象引用Tom指向新对象:Tom=new Reader();
一般,同时声明对象引用和创建对象:类名 对象名=new 类名(); 如Reader Tom=new Reader();
只声明对象不创建,在访问对象成员时为null会引发异常。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
- ¥15 路易威登官网 里边的参数逆向
- ¥15 Arduino无法同时连接多个hx711模块,如何解决?
- ¥50 需求一个up主付费课程
- ¥20 模型在y分布之外的数据上预测能力不好如何解决
- ¥15 processing提取音乐节奏
- ¥15 gg加速器加速游戏时,提示不是x86架构
- ¥15 python按要求编写程序
- ¥15 Python输入字符串转化为列表排序具体见图,严格按照输入
- ¥20 XP系统在重新启动后进不去桌面,一直黑屏。