c# - 从库中覆盖方法

标签 c# methods overriding virtual

我的 C# 项目引用了一个库中的虚方法。如何在我的应用程序中的另一个类中覆盖此方法?

例子:

namespace TheLibary
{
   class SomeClass
   {
      public virtual void TheMethod()
      {
           //Do Stuff
      }
   }
}

然后在我的项目中:

using theLibary;
namespace TheProject
{
   class SomeClass
   {
       public override <Help>
   }
}

编辑: 混淆并完全忘记了这个类没有继承自库类把我搞砸了,已经晚了:)

最佳答案

在开始任何严肃的编码之前,您应该稍微了解一下 OOP(尤其是继承)。为了快速引用,下面是一个如何覆盖方法的示例:

namespace TheDll
{
    public class SomeClass
    {
        public virtual void TheMethod()
        { }
    }
}

namespace TheProject
{
    public class DerivedClass : SomeClass
    {
        public override void TheMethod()
        { }
    }
}

您应该观察到覆盖方法的签名(包括其名称)必须相同。另一方面,派生类可能(并且通常应该,为清楚起见)以不同的方式命名。

关于c# - 从库中覆盖方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10057499/

相关文章:

c# - 覆盖 Wp8.1 WinRt 中的 'protected' 继承成员 'Windows.UI.Xaml.FrameworkElement.OnApplyTemplate() 错误时无法更改访问修饰符

c# - 从 MVC 中的 Controller 调用 SignalR 集线器

Java接口(interface)参数

java - 有没有办法搜索项目中使用某种方法的每个地方?

scala - 为什么我不能重写 Scala 中采用值类作为参数的方法?

c# - 如果我不使用 IoC 容器,是否有比单例模式更好的选择来公开我的类的依赖项?

c# - 如何通过保留 IGrouping 来过滤 IGrouping 的 IEnumerable 的元素

Ruby:BigDecimal:同时是一个类和一个方法?

c# - 有没有办法强制派生类实现抽象类或嵌套在基类中的接口(interface)?

swift - 如何在 Swift 中覆盖 setter