C#或者在.net中怎样判断一个对象的类型

在C#中当一个类的引用类型和创建的对象类型不一样的时候,这个对象类型到底怎么判断。我表达得可能不清楚,例子:A a=new B(); 这个a是什么类型?要分情况吗?求详解。

Helenr
浏览 1632回答 2
2回答

湖上湖

他的类型是B,只是程序需要调用父类隐藏方法或作为参数等原因需要转换,就想你叫张三,你永远是张三,但你也是人类

郎朗坤

A a = new B()这句话分成两步:B b =new B();A a = b;在 a=b,是B类型隐士转换为A,当然A应该是B的父类,而a是实际类型还是B。a,b他们实际是指向的同个对象。
打开App,查看更多内容
随时随地看视频慕课网APP