我用下面的代码创建了一个简单的界面
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DesignPattern_FactoryPattern
{
interface Shape
{
void drawshape();
}
}
然后,我用下面的代码创建了另一个类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DesignPattern_FactoryPattern
{
class Square : Shape
{
public override void drawshape()
{
Console.WriteLine("Shape is Square");
}
}
}
我收到以下错误:
找不到适合的方法被覆盖。
请你帮助我好吗?
最佳答案
所以你有了:
名为Shape
的接口
一个实现Square
接口的名为Shape
的类
在这种情况下,您需要删除单词override
。 drawShape
类中的Square
方法是接口中定义的方法的实现。
假设您有一个名为Shape
的基类,并且Square
类是从Shape
继承的。在这种情况下,drawShape
方法将在基类中使用override
相同名称的方法。
关于c# - 找不到合适的方法可以覆盖,但是有一个方法可以覆盖,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33651394/