La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Sesión 06: Clases y Objetos (2)

Presentaciones similares


Presentación del tema: "Sesión 06: Clases y Objetos (2)"— Transcripción de la presentación:

1 Sesión 06: Clases y Objetos (2)

2 Programación Orientada a Objetos
Caraterísticas Herencia Es la creación de nuevas clases partiendo de una jerarquía de clases ya existente. Mecanismo fundamental para implementar la reutilización Abstracción Consiste en aislar un objeto (sistema modular). Centrase más en Que Hace y no Como lo Hace. Polimorfismo Capacidad que permite utilizar varias clases padre para formar una nueva clase (herencia múltiple) Encapsulamiento Capacidad que poseen las clases de estar compuestas por otras clases.

3 Clases Sintaxis: class NombreClase { //Variables Miembro
//Funciones Miembro }; Ejemplo: class Punto2D {

4 Atributos La lista de atributos es una secuencia de declaraciones de variables de cualquier tipo. Ejemplo: class Vuelo {   //ATRIBUTOS char nombre[30];  int capacidad;   char origen[8];   char destino[8];   char fecha[8]; };

5 Métodos La lista de métodos es una secuencia de funciones “dentro” de una clase. Ejemplo: class Vuelo {   //ATRIBUTOS char nombre[30];  int capacidad;   ... //MÉTODOS void despegue(void); int aterrizaje(int vel); float cargar(int gas); };

6 Métodos La declaración e implementación de los métodos de una clase es literalmente igual a la definición de una función regular. Pueden ser in-line Puede ser off-line: Método in-line. No necesita el operador scope :: Método off-line. Implica la obligatoriedad del operador scope :: class Rectangulo{ private: int ancho; int alto; public: //declaración del método int getArea(); }; class Rectangulo{ private: int ancho; int alto; public: //declaración y implementación int getArea(){ return ancho*alto; } }; //Implementación del método int Rectangulo::getArea() { return ancho*alto; }

7 Constructores y destructores
Los constructores y destructores son métodos especiales de las clases. Usados para inicializar y liberar la memoria de las clases respectivamente: class NombreClase{ Public: NombreClase(); //Declaración de un constructor ~NombreClase(); //Declaración de un destructor };

8 Ejemplo 1 Se desea crear la clase complejo, que permita trabajar con números complejos como si fuesen un tipo de variables más de C++, de modo análogo a int, long, double, etc. Se deben crear tres ficheros complejo.h, complejo.cpp y main.cpp.

9 Ejemplo 2 Se desea crear la clase rectángulo, que permita trabajar con sus dimensiones, áreas y perímetros. Se deben crear tres ficheros rectangulo.h, rectangulo.cpp y main.cpp.

10 Ejemplo 3 Realizar un programa que pueda operar diferentes figura geométricas: rectángulo, triangulo, circulo. Se deben crear los ficheros necesarios para cada clase y main.cpp.

11 Ejemplo 4 Realizar un programa que permita gestionar los estudiantes de informática II. Se deben crear los ficheros para la clase y main.cpp.

12 Ejemplo 5 Se desea crear la clase cuenta corriente, realizar transferencias, depósitos, pagos y obtener saldo. Se deben crear tres ficheros cuenta.h, cuenta.cpp y bancoT.cpp.

13 Ejercicio Implementa la siguiente clase para representar un reloj digital: class CReloj { private: int horas, minutos, segundos; int bateria; public: CReloj(int h, int m, int s, int b); void tic_tac(); void avanza(int h, int m, int s); void atrasa(int h, int m, int s); void recarga_bateria(int b); void escribe_en_12h(); void escribe_en_24h(); };

14 Bibliografía man, ¡no dude en utilizarlo!!
Como Programar en C++ - Deithel & Deithel Ed. PRENTICE HALL Sams Teach Yourself C++ in One Hour a Day, J. Liberty,S. Rao, B. Jones

15 Gracias !


Descargar ppt "Sesión 06: Clases y Objetos (2)"

Presentaciones similares


Anuncios Google