【发布时间】:2017-08-28 20:04:17
【问题描述】:
我需要子类化一个真正的类,我的意思不是抽象类。我需要一种新的行为。
namespace MyProgram
{
public class ParentClass
{
public int Calc(int a)
{
return a + this.Cal();
}
public int Cal()
{
return 2;
}
}
public class ChildClass : ParentClass
{
public int Cal()
{
return 1;
}
}
}
在主程序中,我尝试了以下操作:
ChildClass childClass = new ChildClass();
int a = childClass.calc(3);
但是,a 的值是 5,而不是 4。
【问题讨论】:
-
多么糟糕的命名约定,如此混乱的代码。
-
固定命名约定...
-
您在编译代码时是否偶然发现了警告?您阅读这些警告了吗?
-
@TobiasTheel:由于缺乏研究,我投了反对票。提供的代码会生成一个警告,并且该警告有据可查。勤于研究意味着不需要这个问题。