我没有找到我的问题的答案,但这似乎很简单。主要的大问题是我在 dll 中购买了一些库和一些硬编码的功能,没有源代码我无法重新编译该 dll。所以这里是学校层面的问题:
我们有 2 类 A 和 B
class A {
public void Method1() {
this.Method2 ();
}
private void Method2() {
WriteLine ("A");
}
}
class B : A {
private void Method2() {
WriteLine ("B");
}
}
如果我们调用'new B().Method1()',那么我们有字符串行“A”。我们不能对类 A 做任何事情,但我们可以改变类 B。我们应该得到字符串“B”。
我曾尝试使用“新”修饰符,但如您所知,它没有帮助。答案“也只是覆盖 Method1”不是选项,因为实际代码要大得多。
有什么建议么?