Herencia usando Get y Set
Herencia
Cuando hablamos de herencia en programación no nos referimos precisamente a que algún familiar lejano nos ha podido dejar un fortuna, ya nos gustaría.
En realidad se trata de uno de los pilares fundamentales de la programación orientada a objetos.Es el mecanismo por el cual una clases permite heredar las características (atributos y métodos) de otra clase.
Terminología importante:
1)Superclase: la clases cuyas características se heredan se conoce como superclase ( o una clase base o una clase principal).
2)Subclase: la clase que hereda la otra clase se conoce como subclase( o una clase derivada, clase extendida o clase hija). La subclase puede agregar sus propios campos y métodos, ademas de los campos y métodos de la superclase.
3)Reutilización: la herencia respalda el concepto de reutilización, es decir cunado queremos crear una clase nueva y ya hay una clase que incluye parte del código que queremos, podemos derivar nuestra nueva clase de la clases existente. Al hacer esto estamos reutilizando los campos/atributos y métodos de la clase ya existente.
Uso del Get y Set
El Get nos ayuda a obtener los valores de la herencia y el Set nos ayuda a definir o asignar esos valores.
A continuación te presento un ejemplo el que podrás notar el uso de Get y Set.
class Animal {
constructor(nombre, edad) {
this.nombre = nombre;
this.edad = edad;
this.animales = [];
}
get saludar() {
return "hola, soy " + this.nombre;
};
get hacerSonido() {
return "hace sonido";
};
set nombreAnimales() {
animeles.push(nombre);
}
};
class Perro extends Animal {
constructor(nombre, edad, apodo, color_pelaje) {
super(nombre, edad);
this.apodo = apodo;
this.color_pelaje = color_pelaje
};
get hacerSonido() {
return "Wao Wao Wao";
}
};
class Gato extends Animal {
constructor(nombre, edad, apodo, color_pelaje) {
super(nombre, edad);
this.apodo = apodo;
this.color_pelaje = color_pelaje
};
get hacerSonido() {
return "myu";
}
};
/*var miPerro= new Perro("boby",5,"manchas","cafe");
console.log(miPerro.saludar());
console.log(miPerro.hacerSonido());*/
var miGato = new Gato("minino", 2, "patas", "blanco");
/*console.log(miGato.saludar());
console.log(miGato.hacerSonido());*/
console.log(miGato.saludar);
Comentarios
Publicar un comentario