OK así que admiten la derecha de la parte superior que esto es un poco chiflado ... pero sirve un propósito lógico. Estoy usando C# para un proyecto actual y estoy tratando de encontrar una manera de anular una variable miembro en una clase derivada, pero accedo a la variable anulada en un método de clase base. Para hacer las cosas más "entretenidas", sería preferible si la variable miembro anulada fuese estática (esto NO se muestra en el código de ejemplo a continuación).anulaciones de variables C# miembros utilizados por el método de la clase base
Aquí está mi código de ejemplo:
class baseclass
{
protected string[] array = null;
public string method()
{
string str = "";
foreach (string x in this.array)
{
str += x + " ";
}
return str;
}
}
class subclass1 : baseclass
{
new string[] array = new string[]
{
"class1value1",
"class1value2",
"class1value3",
"class1value4"
};
}
class subclass2 : baseclass
{
new string[] array = new string[]
{
"class2value1",
"class2value2",
"class2value3",
"class2value4"
};
}
¿Alguna idea de por qué esto no funciona y una manera de conseguir alrededor de él?
variables de miembro deseados afectar no son polimórficos como métodos. Inicialice la matriz para contener los valores deseados en cada subclase. –