我有一个带有受保护级别静态变量的基类,一个受保护级别的静态函数和一个公共函数:
public class BaseClass
{
protected static int Size = 4;
public static byte[] DoSomething(byte[] params)
{
// use Size somehow
params = DoSomethingElse(params);
return params;
}
protected static byte[] DoSomethingElse(byte[] params)
{
// do whatever
return params;
}
}
隐藏/覆盖受保护级变量和函数的派生类:
public class DerivedClass : BaseClass
{
public new static int Size = 2;
protected new static byte[] DoSomethingElse(byte[] params)
{
// do something different than base class
return params;
}
}
现在,当我调用DerivedClass.DoSomething时,我想要使用DerivedClass中的Size值和DoSomethingElse,但是使用的是BaseClass值。有没有办法让它使用DerivedClass变量和方法?
答案 0 :(得分:0)
您无法覆盖静态成员。它们属于类本身,并且不与类的任何实例相关联,因此该概念不适用。