C#引用类型的赋值机制
来源:互联网 发布:java bigdecimal 加 编辑:程序博客网 时间:2024/05/17 15:58
using System;class Test{public static void Main(){string s1 = "hello";string s2 = s1;Console.WriteLine(s1);Console.WriteLine(s2);s1 = "world";Console.WriteLine(s1);Console.WriteLine(s2);}}/*hellohelloworldhello*/
解释:
(1)s1="hello"; 执行的是在堆中创建了一个String类型的对象,将这个对象的地址赋给s1。
(2)s2=s1; 执行的是将"hello"对象的地址也赋给了s2。
(3)s1="world"; 实质上并不会去改变"hello"这个对象,它改变的是s1指向的地址,而不是它原来指向对象的内容。
Ps.其他引用类型也是如此。
- C#引用类型的赋值机制
- C#引用类型的赋值机制
- C#值类型赋值与引用类型的赋值
- C#值类型赋值与引用类型的赋值
- C#值类型赋值与引用类型的赋值
- C#值类型赋值与引用类型的赋值
- C#值类型赋值和引用类型赋值
- 引用类型的赋值函数
- C#的引用类型
- 改善C#程序的建议5:引用类型赋值为null与加速垃圾回收
- 改善C#程序的建议5:引用类型赋值为null与加速垃圾回收
- 改善C#程序的建议5:引用类型赋值为null与加速垃圾回收
- [小技巧]C#值类型按引用赋值 转
- JS基本类型和引用类型赋值的区别
- C#的引用类型 -3
- C#的值类型与引用类型
- C#的值类型和引用类型
- C#值类型、引用类型的区别
- C#协变和抗变
- DIY桌面备忘录
- 永远不要在Classpath里边放有版本冲突的jar包
- WPF Style 有时不起作用的问题
- 有关python私有变量使用的例子
- C#引用类型的赋值机制
- 学习oracle的6条经验
- WSDL to Java之自定义java package名
- Java环境配置详解
- ZJU 1115 新形式
- XCode 4.2 Archive App后Invalidate出现Icon出错
- 最底层的鼠标双击代码
- oracle07proc01
- struts总结