C# 中的 null

简介:

原文 C# 中的 null

C# 允许将 null 值赋给任意引用变量(不能把 null 赋给一个值变量)。值为 null 的变量表明该变量不引用内存中的任何对象。

如下所示:

 

Circle c = new Circle(10);  
Circle copy = new Circle(20); // 随便用一个值来初始化 copy  
copy = c;// copy 和 c 引用同一个对象</span>  

 

将 c 赋给 copy,则 copy 和 c 引用同一个对象,而 copy 原来引用的对象则由 runtime 执行一个称为垃圾回收(garbage collection)的操作来回收内存。

这并不是一种好的写法,当只有在一个变量不包含一个引用的时候,才允许这个变量引用一个对象,则需要用到 null。

如下所示:

 

复制代码
    Circle c = new Circle();  
    Circle copy = null;  
      
    if(copy == null)  
    {  
        copy = c;       // copy 和 c 引用同一个对象   
    }  
复制代码

 

没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。






    本文转自wenglabs博客园博客,原文链接:http://www.cnblogs.com/arxive/p/5950575.html ,如需转载请自行联系原作者

相关文章
|
Go
【go 语言】PProf 的使用——CPU和内存占用分析(二)
PProf 的使用——CPU和内存占用分析(二)
1720 0
【go 语言】PProf 的使用——CPU和内存占用分析(二)
|
缓存 安全 Go
2.Channels
2.Channels
|
Linux Go Windows
gopacket使用
gopacket使用
|
存储 JSON JavaScript
glTF和GLB有什么区别?
glTF和GLB有什么区别?
894 0
|
测试技术
《游戏测试》你真的会写用例吗? 1
《游戏测试》你真的会写用例吗?
|
监控 算法 SEO
谷歌霸屏外推技术原理,谷歌留痕霸屏怎么做?
优化您的网站:对每个网站进行优化,包括关键字研究、元标记、内容优化和内部链接。
773 0
谷歌霸屏外推技术原理,谷歌留痕霸屏怎么做?
|
存储 Prometheus 监控
容器环境自建数据库、中间件一键接入阿里云 Prometheus 监控
阿里云Prometheus服务4月9日发布重大升级,支持容器环境下一键接入MySQL、Redis、MangoDB、ElasticSearch等数据库和Kafka、ZooKeeper等中间件的监控,并提供开箱即用的监控大盘,现在接入更有15天免费试用。
2330 70
容器环境自建数据库、中间件一键接入阿里云 Prometheus 监控
|
Arthas Java 测试技术
神器Arthas使用小结
神器Arthas使用小结
166 0
|
JavaScript 测试技术
接口测试平台代码实现146: 平台主题-夏日清凉5
接口测试平台代码实现146: 平台主题-夏日清凉5
接口测试平台代码实现146: 平台主题-夏日清凉5
|
XML JSON JavaScript
jsx语法规则
jsx语法规则
157 0