C#中的指针和as,is运算符

来源:百度知道 编辑:UC知道 时间:2024/06/14 00:48:55
class Apple:Fruit{}
现在有
Fruit f=new Apple()
Apple a= f as Apple;
既然f只是指向Apple中的Fruit部分,那么f as Apple 是如何转换的呢?
对于f来说,它明明是fruit,或者说仅仅指向Apple中的Fruit部分,那么
f is Apple 是怎么判断为true的呢?

class Apple:Fruit{}
Fruit f=new Apple() //重点在这里
Apple a= f as Apple;

f.GetType();你就会明白为什么的了

他会告诉你 f是Apple类型的

Fruit继承了Apple类

这是多态的概念,你要了解这个必须要明白继承和多态是怎么回事。