为了账号安全,请及时绑定邮箱和手机立即绑定

类重写需要子类的方法和基类方法签名一样吗?

类重写需要子类的方法和基类方法签名一样吗?

C#
慕标琳琳 2018-12-16 14:09:15
<P>定义一个基类Student,它有个虚方法如下:</P> <P>public virtual string getFriends()<BR>&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return "我们是朋友";</P> <P>&nbsp;&nbsp;&nbsp; }</P> <P>定义一个子类GoodStudent类,它的方法重写了基类中的getFriends()方法,如下:</P> <P>public override string getFriends(string name)<BR>&nbsp;&nbsp;&nbsp; {<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return "我和" + name + "是恋人";<BR>&nbsp;&nbsp;&nbsp; }</P> <P>调用如下:</P> <P>GoodStudent xiaoMin = new GoodStudent();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Label1.Text = xiaoMin.getFriends("haha");</P> <P>运行出现以下错误:<STRONG>编译器错误信息: </STRONG><FONT face=Arial>CS0115: “GoodStudent.getFriends(string)”: 没有找到适合的方法来重写</FONT></P> <P><FONT face=Arial></FONT>&nbsp;</P> <P>&nbsp;</P>
查看完整描述

2 回答

?
炎炎设计

TA贡献1808条经验 获得超4个赞

是的,重写需要类名,与参数都要一样,否则不能重写.

查看完整回答
反对 回复 2018-12-20
?
人到中年有点甜

TA贡献1895条经验 获得超7个赞

覆写的三个基本条件是: 1.相同的方法名 2.相同的参数列表 3.相同的返回值类型

查看完整回答
反对 回复 2018-12-20
  • 2 回答
  • 0 关注
  • 566 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信