Programacion Avanzada
Enviado por LUIS RAMSÉS VELÁZQUEZ SÁNCHEZ • 28 de Noviembre de 2021 • Examen • 1.565 Palabras (7 Páginas) • 94 Visitas
[pic 1]
Programación Avanzada
T5: Herencia
Alumno: Luis Ramsés Velázquez Sánchez.
No. De control: 19111609.
Fecha de entrega: 8 de octubre de 2021.[pic 2]
T5: Herencia
Hacer un resumen de
- Clase base, clase derivada.
- Clases base públicas, protegidas y privadas.
- Constructores y destructores en clases derivadas.
Hacer un programita en tinkercad que implemente estos métodos
Objetivos:
Nuestro objetivo principal en la siguiente práctica es entender que la herencia es el mecanismo fundamental de relación entre clases en la orientación a objetos. Relaciona las clases de manera jerárquica; Una clase padre o superclase sobre otras clases hijas o subclases derivadas.
Los descendientes de una clase heredan todas las variables y métodos que sus ascendientes hayan especificado como heredables, además de crear los suyos propios. La característica de herencia, nos permite definir nuevas clases derivadas de otra ya existente, que la especializan de alguna manera. Así logramos definir una jerarquía de clases, que se puede mostrar mediante un árbol de herencia.
Lo que haremos puntualmente es con el uso de los conceptos otorgados por el docente es encender un led de cierto color según un almacenador de datos obtenidos de vehículos siendo más específicos en carros.
Introducción:
Para entender un poco mejor la práctica, dejaremos en claro para empezar los conceptos básicos de la misma;
Clase base: Una clase base es una clase, en un lenguaje de programación orientado a objetos, de la cual se derivan otras clases. Facilita la creación de otras clases que pueden reutilizar el código heredado implícitamente de la clase base (excepto constructores y destructores). Un programador puede ampliar la funcionalidad de la clase base agregando o anulando miembros relevantes para la clase derivada. Una clase base también se puede llamar clase padre o superclase.
Clase derivada: Son clases que dependen de las clases bases, ya que algunos de sus métodos son también heredados, y muchas veces, el compilador arrojara malos resultados, ya que al ser dependientes estas clases, a veces podrán generar errores lógicos.
Clases base públicas, protegidas y privadas:
Al derivar una clase a partir de una clase base, la clase base puede ser heredada como public, protected o private.
Al derivar una clase a partir de una clase base pública, los miembros públicos de la base se convierten en miembros públicos de la clase derivada, y los miembros protegidos de la clase base se convierten en miembros protegidos de la clase derivada. Los miembros privados de una clase base nunca son accesibles en forma directa desde una clase derivada.
Al derivar una clase a partir de una clase base protegida, los miembros públicos y protegidos de la clase base se convierten en miembros protegidos de la clase derivada.
Cuando se deriva una clase a partir de una clase base privada, los miembros públicos y protegidos de la clase base se convierten en miembros privados de la clase derivada.
[pic 3]
Constructores y destructores en clases derivadas:
En general, anterior a la ejecución del cuerpo particular del constructor, los constructores de cada superclase son llamados para inicializar su parte del objeto creado. Así, al constructor de clase derivada siempre llamará primero al constructor de su clase base, a fin de crear y de inicializar los miembros de la clase base de la clase derivada.
Si hay más superclases, proveemos sus llamadas a constructor como una lista separada por comas. Este mecanismo se usa también para crear objetos contenidos
Los destructores serán llamados en orden inverso a las llamadas de constructor, por lo que un destructor de clase derivada será llamado antes del destructor de su clase base (o superclase).
Un destructor de clase es llamado automáticamente cuando un objeto de una clase se sale de alcance: debemos asegurarnos de que la memoria asignada sea liberada.
Este método especial llamado destructor es llamado una vez por cada objeto en el momento de su destrucción. Un destructor no recibe parámetros ni regresa ningún valor. Una clase sólo puede tener un destructor: la homonimia de destructores no está permitida. La destrucción de los objetos tiene lugar cuando el objeto abandona su ámbito de definición o es explícitamente destruido.
Esto último sucede cuando nosotros dinámicamente asignamos un objeto y lo liberamos cuando ya no nos es necesario.
Desarrollo:
Inicio de la práctica.
En nuestra práctica que vamos a hacer a continuación vamos a necesitar ciertos materiales en específico, por lo tanto, procederemos a enumerarlos.
Materiales:
- 3 Resistor.
- 3 LED (No importa el color
- 1 Computadora con tinkercad.
Montaje de la práctica
Colocamos sobre la protoboard los resistores y leds como se indica a continuación, para ser más explícitos usaremos nuestra herramienta por excelencia Tinkercad.
[pic 4]
Listo, tenemos todas nuestras conexiones, físicamente nuestro circuito está listo para funcionar, solo falta la parte del código. Para ello usaremos nuestro IDE de Arduino para poder programar nuestro encendido y apagado de leds.
...