Cuando empecé a trabajar con lenguajes de programación orientados a objetos, me enseñaron la siguiente regla:¿Por qué se deben inicializar las variables miembro en los constructores?
Cuando se declara un campo de una clase, no inicializar todavía. Haz eso en el constructor.
Un ejemplo en C#:
public class Test
{
private List<String> l;
public Test()
{
l = new List<String>();
}
}
Pero cuando alguien me preguntó recientemente por qué hacer eso, no pude llegar a una razón. No estoy realmente familiarizado con el funcionamiento interno de C# (u otros lenguajes de programación, para el caso, ya que creo que esto se puede hacer en todos los lenguajes OO).
¿Por qué es esto hecho? ¿Es seguridad? Propiedades?