Cast一个类到一个接口(interface)和在C#中将一个类转换为另一个类是一样的吗?这个过程是装箱还是拆箱?
interface Area
{
string TxtArea
{
get;
set;
}
}
转换成它的接口(interface):
public void Test()
{
ExternArea extArea = new ExternArea();
if(extArea is Area)
{
((Area)extArea).TxtArea = "voila";
}
}
最佳答案
假设 ExternArea
是一个类而不是值类型(结构或枚举),则不涉及装箱。仅装箱曾经将值类型转换为引用类型实例。
请注意,通常首选使用 as
:
Area area = extArea as Area;
if (area != null)
{
area.TxtArea = "voila";
}
关于C# 转换接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4051952/