装箱的问题

.Net技术 码拜 9年前 (2016-03-10) 1110次浏览
本人的问题是 装箱是在值类型向引用类型转换时发生的   那假如是引用类型(例如类)  还可以进行装箱操作吗?例如有一个class A,
A a=new A();
object b=a;
解决方案

12

装箱特指值类型转换成object的过程(实际上原因是值类型不能再继承,所以向上只能转换成object)

13

引用 10 楼 weikeli19 的回复:
Quote: 引用 9 楼 daixf_csdn 的回复:
Quote: 引用 8 楼 weikeli19 的回复:
Quote: 引用 1 楼 daixf_csdn 的回复:

这不叫装箱。这只是传递引用而已。
为什么需要装箱,是原因是值类型和引用类型的存储模式不一样,引用类型使用的是堆存储,值类型使用堆栈存储,所以才需要装箱拆箱。
都是引用类型,就不适用装箱拆箱的概念了。

你只要回答出来  这个分就给你了

原因是Card继承自Object

回答的不够清楚  本人还是没理解 怎么办  本人也知道Card继承自Object

哎。说几点:
1、你说的“那为什么它会自动转换为Object类型 ”是错的,它还是它本人的类型,并没有转换为Object类型,你去调试一下你就会明白。.Net只是帮你实现了对象的引用,让你方便使用
2、为什么.Net要这么处理?你可以有两种方式去研究清楚
1)你把.net框架源代码读一遍。但本人没读过
2)你换位思考一下,假设你是.Net之父,你会为.Net框架的派生类赋值给基类类型做出何种支持?本人想本人会做出同样的结果。
.Net支持这样去做,就是为了方便编程,提高编程的生产效率而提供的功能而已。不要钻牛角尖,假如要钻,你参照第1)条


CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明装箱的问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)