有这么二个类,如下:
class B{
public Int32 x;
}class D:B{
public Int32 y;
}
然后我进行实例化如下:
B b1=new D();
此时b1应为类D的对象(至少个人是这么认为的)!!!
但为什么b1.y不能访问呢??????
class B{
public Int32 x;
}class D:B{
public Int32 y;
}
然后我进行实例化如下:
B b1=new D();
此时b1应为类D的对象(至少个人是这么认为的)!!!
但为什么b1.y不能访问呢??????
解决方案 »
- .net基础问题
- 光盘播放程序
- The underlying connection was closed:=========来者有分
- vs没有打包安装功能?
- 关于继承combobox写颜色下拉框的问题
- 以前做的一个web的系统,现在导入后有问题出现!谁帮忙解决下!(回答给分)
- 急问try catch里捕获了异常之后怎么才能不退出程序?
- 视频的最大化问题~~this.axStormPlayer1.Width = MaximumSize.Width;怎么不行?
- 请问大侠,winform 如何控制在不同分辨率下的窗体位置呢?
- 数据库字符串类型默认为Null
- 用c# 2005怎么做cs应用程序的启动封面呀?实现下有加载进度条,上面窗口又可以在程序加载时,浏览帮助画面...
- 关于字符串处理的技巧问题? 请高手指教一下 谢谢
D d=(D)b1看看是不是能访问了
((D)b1).y
最楼上三位的答案!我根本没有搞反,是可以这么实例化的。
object objStr = "123";对objStr就只能访问object类型的公开方法。假想一下,你有个方法Draw,接受Shape类型的参数。别人也会调用你这个方法,传输进来的也许是Shape的派类型,而这些都是在你编译Draw之后发生的,所以,引用所指向的实例的类型只有在运行时才能知道。你再捉摸捉摸,读读语言参考。