Jump to content

Duda constructores


Recommended Posts

Hola, estaba aprendiendo el concepto de herencia y me surgio la duda en relacion a los constructores, ya que en la clase base tengo 1 que no toma parametros y el otro que si, lo que no se es el funcionamiento del primero el que no toma parametros.

 

 

 

 
//constructor clase persona
public Persona()
        {
        }
//constructor sobrecargado clase persona
        public Persona (string c, string n, string a)
        {
            this.codigo = c;
            this.nombre = n;
            this.apellido = a;
        }
        public virtual string RetornarDatos() 
        { 
         return this.codigo+" " +this.nombre+ " " + this.apellido;
        }

 

Clase estudiante

 

//Constructor clase estudiante
        public Estudiante (string c, string n, string a, string t, string e) 
        {
            this.codigo = c;
            this.nombre = n;
            this.apellido = a;
            this.carrera = e;
            this.tipo = t;
        }

        public override string RetornarDatos()
        {
                return this.codigo + " " +this.nombre+" " + this.apellido+" " + 
                       this.tipo+" "+this.carrera;
        }


Link to comment
Share on other sites

El constructor vacío lo que va a hacer es crear una nueva instancia del objeto sin setear ninguno de los valores de los atributos, es decir, va a reservar un espacio en memoria para que tu objeto se almacene mientras lo utilices.

Los constructores en general tienen como proposito crear una instancia de la clase (objeto) en memoria, para su uso. La diferencia entre uno con parametros y uno sin parametros son los valores que asignas u operaciones que podrias realizar al momento de crear una referencia en memoria de tu clase.

Como concepto los constructores vacios vs los constructores con parametros no tienen que ver con herencia sino más bien con polimorfismo.

La herencia en tu ejemplo aparece al utilizar el constructor de persona vs el constructor de estudiante y la relacion de herencia responde a la pregunta "es un(a)", es decir, Estudiante -> es una -> Persona

 

Eso....espero ayudar de alguna forma

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...