You are on page 1of 18

OBJETO

Un objeto es una entidad abstracta que tiene las caractersticas de un objeto real. Los objetos se crean y eliminan durante la ejecucin del programa, adems interactan con otros objetos. Los objetos son construcciones de programacin que se obtienen a partir de entidades llamadas clases. La definicin de una clase se conoce como instanciacin de clases.

CLASES
Una clase es la descripcin de un conjunto de objetos. Consta de mtodos y datos que resumen las caractersticas comunes de un conjunto de objetos. Muestra el comportamiento general de un grupo de objetos. DISTINTOS OBJETOS DISTINTAS CLASES Un objeto se crea mediante el envo de un mensaje de construccin a la clase. Anlogamente para la destruccin del objeto, la clase recibe un mensaje de destruccin.

SINTAXIS DE UNA CLASE


class Nombre_de_la_Clase { Definicin_de_Datos; Prototipos_y_mtodos; }; Nota: Muy importante no olvidar el punto y coma final. Cuando deseemos crear un objeto de una clase definida lo que haremos ser lo siguiente: Nombre de la Clase Nombre del Objeto; Punto p1,p2; // Creacin de dos objetos // de la clase Punto Tambin se pueden definir apuntadores a objetos de la siguiente forma: Nombre de la Clase *Nombre del Objeto; Punto p1,p2; // Creacin de dos objetos // de la clase Punto Se puede acceder a los datos y mtodos de una clase de la misma forma que se accede a un campo de una estructura, es decir, con . o con ->, seguido del nombre del elemento a usar.

DEFINICIN DE UNA CLASE El cuerpo de un mtodo, puede o bien incluirse en la definicin de una clase, en cuyo caso lo llamaremos mtodo inline, o bien en un archivo fuera de la clase. Para que C++ sepa cundo una funcin es simplemente una funcin, y cundo es un mtodo, en ste ltimo caso siempre debemos poner al mtodo como prefijo el nombre de la clase a la que pertenece seguido de :: (operador de mbito).

class <identificador> { [ public: [ <miembros_dato> ] [ <funciones_miembro> ] ] [ protected: [ <miembros_dato> ] [ <funciones_miembro> ] ] [ private: [ <miembros_dato> ] [ <funciones_miembro> ] ] }; Aclaracin: Las partes public, protected y private pueden o no aparecer, y no importa su orden. atributo=miembro_dato Metodo=funcion_miembro

MIEMBROS PBLICOS, PROTEGIDOS Y PRIVADOS


Un miembro pblico es accesible en cualquier lugar en el que exista un objeto de la clase. Un miembro protegido slo es accesible desde las clases que se hereden de la clase que lo contiene.

Un miembro privado slo es accesible por los mtodos de la clase a la que pertenece. Tambin se puede crear una clase usando la palabra clave struct, la diferencia es que con struct los miembros se hacen pblicos por defecto, mientras que con class se hacen privados por defecto. Para hacer un miembro pblico, privado o protegido usamos respectivamente: public, private o protected

class Celdilla { char Caracter, Atributo; //Miembros privados public: void FijaCeldilla(char C, char A) // { Caracter=C; Atributo=A; } void ObtenCeldilla(char &C, char &A) { C=Caracter; A=Atributo; } //las funciones se ejercen dentro de la clase }; //&C es una referencia a la variable C

class Celdilla { char Caracter, Atributo; public: void FijaCeldilla(char C, char A);//se definen los metodos void ObtenCeldilla(char &C, char &A); }; //termina la definicion de la clase void Celdilla::FijaCeldilla(char C, char A) { Caracter=C;Atributo=A; } void Celdilla::ObtenCeldilla(char &C, char &A) { C=Caracter;A=Atributo; } //son las funciones(metodos ) de la clase celdilla

Componentes del mensaje: Nombre del receptor del mensaje Mtodo invocado Informacin necesaria para la ejecucin del mtodo

Resumiendo, mensaje es la activacin de un objeto.El conjunto de mensajes que puede recibir un objeto se conoce como protocolo de un objeto.

Un programa orientado a objetos se resume en 3 sucesos: 1. Creacin de objetos cuando se necesitan, mediante un mensaje de construccin a la clase. 2. Intercambio de mensajes entre objetos o entre usuario de objeto y objeto (diferencia fundamental entre lenguajes POO puros e hbridos). 3. Eliminar objetos cuando no se necesitan, mediante un mensaje de destruccin a la clase.

Todos los nombres del enunciado son objetos a tener en cuenta. Cosas tangibles ("coche") Roles o papeles ("empleado") Organizaciones ("empresa") Incidentes o sucesos ("liquidacin") Interacciones o relaciones ("pedido")

HERENCIA Herencia es la capacidad de un objeto (clase) para utilizar las estructuras y los mtodos existentes en antepasados o ascendientes. Es la reutilizacin de cdigo desarrollado anteriormente. Cuando usamos herencia decimos que hacemos programacin por herencia: Definicin de nuevos tipos a partir de otros con los que comparten algn tipo de caracterstica.

TIPOS DE HERENCIA

Herencia simple: un tipo derivado se crea a partir de una nica clase base.

Figura Rectngulo Tringulo

Herencia mltiple: una clase tienen ms de una ascendiente inmediato. Persona Profesor Profesor universitario Investigador

void cola :: ponent(int i) { if(posfin>=100) { cout<<"la cola esta llena "; return; } posfin++; c[posfin] = i; } El :: se llama operador de resolucin de mbito; indica al compilador que la funcin ponent(int i) pertenece a la clase cola, o dicho de otra manera, ponent(int i) est dentro del mbito de cola.

ABSTRACCION
abstraccin consiste en la generalizacin conceptual de un determinado conjunto de objetos y de sus atributos y propiedades, dejando en un segundo trmino los detalles concretos de cada objeto. Qu se consigue con la abstraccin? Bueno, bsicamente pasar del plano material (cosas que se tocan) al plano mental (cosas que se piensan).

la encapsulacin se refiere a la capacidad de agrupar y condensar en un entorno con lmites bien-definidos distintos elementos.

You might also like