这个c#代码中为什么结果为1 0,a类中有个构造函数那是干嘛用的,b类中也有构造函数,是继承了a类

这个c#代码中为什么结果为10,a类中有个构造函数那是干嘛用的,b类中也有构造函数,是继承了a类吗,那个y不是-1吗... 这个c#代码中为什么结果为1 0,a类中有个构造函数那是干嘛用的,b类中也有构造函数,是继承了a类吗,那个y不是-1吗 展开
 我来答
百度网友d36a02b
2015-02-10 · TA获得超过111个赞
知道小有建树答主
回答量:105
采纳率:100%
帮助的人:55.9万
展开全部
A a = new A();

//new A() -> Print(), A 的 Print() 为空,什么都没有

B b = new B();
//new B(),由于 B 继承 A, new B() 时会先执行 public A(), 这个时候, B 内的 y=0
//输出 x=1, y=0
//new B() -> public A() (在这里的时候已经 print 了,y=0) -> public B() (y 被赋值 -1)

A c = new B();
//c 虽然实例化时使用的是 new B(),但其实际上还是一个A,public A() 是什么都没有的,并不会执行 public B()
更多追问追答
追问
您中间的那段我还是没看懂
为什么y就得0了,那个print是空的,什么也没有还写他干嘛,我是初学者,麻烦
leochen110
2015-02-10 · TA获得超过741个赞
知道小有建树答主
回答量:3748
采纳率:37%
帮助的人:288万
展开全部
构造函数是初始化用的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式