Documentos de Académico
Documentos de Profesional
Documentos de Cultura
2. Conceptos (2.0)
Es una relación entre una clase padre (clase base) y una clase hija (clase derivada) llamada "es un
tipo de", que muchas veces se abrevia como isA.
La herencia es simple cuando la clase derivada que estamos considerando sólo tiene una clase
base.
Ejemplo:
#include <iostream>
using namespace std;
class Vehiculo {
public:
void avanza() {}
};
int main()
{
Moto t;
Coche c;
t.avanza();
c.avanza();
return 0;
}
La herencia múltiple se encuentra en aquellos casos en los que una clase derivada tiene varias
clases base (al menos, más de una).
Ejemplo:
Un ejemplo sería el de una clase de Profesor-Universitario que heredara de las clases Profesor e
Investigador.
La clase Profesor declararía la información que deseamos conocer sobre los profesores: su nombre
y la materia que imparten.
class Profesor {
private:
string nombre;
string materia;
public:
{}
{ return nombre; }
{ return materia; }
};
La clase Investigador declararía la información que deseamos conocer sobre los investigadores: su
nombre y la especialidad en la que investigan.
class Investigador {
private:
string nombre;
string especialidad;
public:
{}
{ return nombre; }
{ return especialidad; }
};
{}
};
int main()
C. Explique la Abstracción
-Identificación de clases: los conceptos que tienen entidad en sí mismos, no dependen de otros, se
pueden describir, comprender y analizar pueden abstraerse como una clase.
-El objetivo del modelo: determina tanto el grado de detalle como la información relevante.
D. ¿Qué es UML?
Es un concepto OOPs donde un nombre puede tener muchas formas. Por ejemplo, tiene un
teléfono inteligente para comunicarse. El modo de comunicación que elijas podría ser cualquier
cosa. Puede ser una llamada, un mensaje de texto, un mensaje de foto, correo, etc.
Ejemplo: Podemos crear dos clases distintas: Gato y Perro, que heredan de la superclase Animal.
La clase Animal tiene el método abstracto makesound () que se implementa de forma distinta en
cada una de las subclases (gatos y perros suenan de forma distinta). Entonces, un tercer objeto
puede enviar el mensaje de hacer sonido a un grupo de objetos Gato y Perro por medio de una
variable de referencia de clase Animal, haciendo así un uso polimórfico de dichos objetos respecto
del mensaje mover.
Como todos los objetos Gato y Perro son objetos Animales, podemos hacer lo siguiente
Creamos dos variables de referencia de tipo Animal y las apuntamos a los objetos Gato y Perro.
Ahora, podemos llamar a los métodos makeSound ().
La modularidad es una propiedad que nos permitirá subdividir nuestro programa en partes más
pequeñas (subprogramas) que habitualmente llamamos “módulos” las cuales deben ser
independientes de la aplicación o programa original en sí.
Esta función nos permite invocar y conservar un método o atributo de una clase padre (primaria)
desde una clase hija (secundaria) sin tener que nombrarla explícitamente. Esto nos brinda la
ventaja de poder cambiar el nombre de la clase padre (base) o hija (secundaria) cuando queramos
y aún así mantener un código funcional, sencillo y mantenible.
Ejemplo: