我目前正在使用一个名为Engine的类,它被设计为在其构造函数中接受ThreadStart委托.以下是Engine级课程的简化版本:
public class Engine {
public Engine(ThreadStart threadStart) {
// Initialization logic here...
}
}
我的目标是用另一个名为UpdateEngine的类来扩展这个类.与Engine不同,UpdateEngine的构造函数中不直接接受ThreadStart.相反,它有一个名为UpdateRun的方法,我希望将其作为ThreadStart传递给Engine‘S构造函数,如下所示:
public class UpdateEngine : Engine {
public UpdateEngine() : base(UpdateRun) {
// Additional initialization logic here...
}
public void UpdateRun() {
// Method implementation...
}
}
然而,当我try 这样做时,我遇到了一个编译器错误:CS0120 An object reference is required for the non-static field, method, or property.
我知道有各种方法来处理方法继承和重写(例如,使用virtual、override、abstract或static),但我很好奇是否有办法使用这种特定的方法来实现我的目标.
我还try 在Engine类中引入委托类型(例如,CallBack),并将其用作构造函数的参数,但也没有成功.
有谁对如何实现这一目标有见解或建议吗?任何指导或替代方法都将不胜感激!