欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > asp.net >内容正文

asp.net

.NET小细节

发布时间:2025/3/15 asp.net 22 豆豆
生活随笔 收集整理的这篇文章主要介绍了 .NET小细节 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1、equals()和运算符==的区别

    C#中有两种不同的相等:引用相等和值相等。值相等是两个对象包含相同的值;引用相等是两个对象引用的是同一个对象。

    “==”操作符比较的是两个变量的值是否相等,或两个引用是不是指向同一个内存地址(类似比较文件夹的路径是否相同);

     equals()方法比较的是两个对象指向的内存空间中的内容是不是相同。

     对于string类型,==比较字符串的值。

     因为值类型是存储在内存中的栈中,而引用类型的变量在栈中仅仅是存储引用类型变量的地址,其本身则存储在椎中。

     ==操作符比较的是两个变量的值是否相等,对于引用类型变量表示的是两个变量在栈中存储的地址是否相同,即栈中的内容是否相同。

     equals()表示的是两个变量是否是对同一个对象的引用,即堆中的内容是否相同。

2、const和readonly的区别

  •  readonly修饰符用来表示只读,const用来表示不变常量。
  • readonly和const都是用来标识常量的
  • 初始化赋值不同:const必须在声明的同时赋值,readonly可以在声明或构造函数中赋值
  • const是编译时常数,readonly可用于运行时常数:const不能从一个变量中提取值来初始化,readonly可以用变量来初始化
  • const默认就是静态的,readonly必须显示声明为静态的(static)
  • const修饰的值的类型有限,readonly可以是任何类型

   

 

转载于:https://www.cnblogs.com/tkaren/p/5391901.html

总结

以上是生活随笔为你收集整理的.NET小细节的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。