Al momento ho due classi derivate Ae B, che hanno entrambe un campo in comune e sto cercando di determinare se dovrebbe andare nella classe base.
Non viene mai referenziato dalla classe base, e dire se in qualche punto lungo la strada viene derivata un'altra classe C, che non ha un _field1, quindi il principio del "meno privilegiato" (o qualcosa) non sarebbe violato se era?
public abstract class Base
{
// Should _field1 be brought up to Base?
//protected int Field1 { get; set; }
}
public class A : Base
{
private int _field1;
}
public class B : Base
{
private int _field1;
}
public class C : Base
{
// Doesn't have/reference _field1
}
Base,A,B,C, e_field1sono. Questi sono dettagli importanti che non dovrebbero essere esclusi; Penso che dovresti modificare la domanda per parlare di cosa siano.