您好我想在非抽象类和非派生类中实现抽象方法在继承类(派生类)中我可以轻松覆盖方法但我想知道是否可以在非派生类中执行此操作。 我正在粘贴代码的一部分以便理解 在代码中我需要在ActionBaseTester clas中实现getAction()方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AbstractClassIssue.cs
{
public abstract class ActionBase
{
public abstract bool getAction(ActionBase act);
}
public class ActionBaseDerived : ActionBase
{
public override bool getAction(ActionBase act)
{
return true;
}
}
class ActionBaseTester
{
//How to implement getAction method in non abstract non inherited class
static void Main(string[] args)
{
}
}
}
enter code here
答案 0 :(得分:0)
答案 1 :(得分:0)
您已经通过编写getAction
从抽象基类ActionBase
实现了抽象方法public override bool getAction(ActionBase act)
。这就是抽象类的要点:提供功能但将实现留给它们的派生类。现在,您可以通过以下代码在Main方法中调用此方法:
ActionBase @base = new ActionBaseDerived();
@base.getAction(yourAction);