Datos personales

domingo, 12 de febrero de 2012

HERENCIA

Es la relación entre una clase general y otra clase más especifica. 


Por ejemplo: Si declaramos una clase párrafo derivada de una clase texto, todos los métodos y variables asociadas con la clase texto, son automáticamente heredados por la subclase párrafo.



La herencia de clases es uno de los conceptos básicos de la programación orientada a objetos. Decir que una clase hereda de otra quiere decir que esa clase obtiene los mismos métodos y propiedades de la otra clase. Permitiendo de esta forma añadir a las características heredadas las suyas propias.
Supongamos que tenemos una clase "Persona" con los métodos y propiedades básicas de una objeto persona como podrian ser "caminar" o "hablar", podríamos tener otras clases como "Guillermo" o "Elder" que comparten todas las características de una "Persona" pero que añaden características propias. Por lo que "Guillermo" y "Elder" pueden realizar las mismas funciones que puede realizar una "Persona" y además cada una puede realizar las suyas propias, por ejemplo, "Guillermo" sabe nadar pero "Elder" no, y "Elder" sabe bailar reggeton pero "Guillermo" no.
En terminos de programación estaríamos diciendo que "Guillermo" y "Elder" son dos clases especializadas que heredan o extienden de la superclase "Persona".




POLIMORFISMO

Indica que una variable pasada o esperada puede adoptar múltiples formas.
Cuando se hablar de polimorfismo en programación orientada a objetos se suelen entender dos cosas:

1.- se refiere a que se puede trabajar con un objeto de una clase sin importar de qué clase se trata. Es decir, se trabajará igual sea cual sea la clase a la pertenece  el objeto. Esto se consigue mediante Jerarquías de clases y clases abstractas.

2.- Suele referirse a la posibilidad de declarar métodos con el mismo nombre que pueden tener diferentes argumentos dentro de una misma clase.


LA CAPACIDAD DE UN PROGRAMA DE TRABAJAR CON MÁS DE UN TIPO DE OBJETO SE CONOCE CON EL NOMBRE DE POLIMORFISMO.


EJEMPLO:
*Dada una clase Vehículo, la características  de polimorfismo habilita al programador para definir métodos en sus subclases (por ejemplo:  Coche, Camión y Moto) 

*No importa qué tipo de Vehículo sea ya que si llamamos al método getNumeroRuedas() llamará al propio de cada subclase,  pero el objeto no deja de ser vehículo también.

CLASE

Clase es un contenedor de uno o más datos (variables o propiedades miembro) junto a las operaciones de manipulación de dichos datos (métodos). Las clases pueden definirse como estructuras (struct), uniones (unión) o clases (class) pudiendo existir diferencias entre cada una de las definiciones según el lenguaje. Además las clases son agrupaciones de objetos que describen su comportamiento.


LA SINTAXIS TIPICA DE UNA CLASE ES:

                      Class Nombre {
                                // variables miembro (habitualmente privadas)
                       miembro_1; //lista de miembros
                       miembro_2;
                       miembro_3;

                                //funciones o métodos (habitualmente públicas)
                        función( ); //funciones miembro conocidas
                        función();  //funciones como métodos

                                //propiedades (habitualmente públicas)

                         propiedad_1;
                         propiedad_2;
                         propiedad_3;
                         propiedad_4;
                  }

jueves, 9 de febrero de 2012

OBJETO

  Cosa material e inanimada, generalmente de tamaño pequeño o mediano.
2   Materia o asunto que el individuo percibe y sobre el cual piensa.
3   Materia o asunto de que se ocupa una ciencia.
 
La programación orientada a objetos consiste en ordenar datos en conjuntos modulares de elementos de información del mundo real (denominado un dominio). Estos elementos de datos se llaman objetos. Estos datos se agrupan de acuerdo a las características principales del mundo real de estos elementos (tamaño, color, etc.).

Un objeto se caracteriza por varios conceptos:
  • Atributos: estos son los datos que caracterizan al objeto. Son variables que almacenan datos relacionados al estado de un objeto.
  • Métodos (usualmente llamados funciones de miembro): Los métodos de un objeto caracterizan su comportamiento, es decir, son todas las acciones (denominadas operaciones) que el objeto puede realizar por sí mismo. Estas operaciones hacen posible que el objeto responda a las solicitudes externas (o que actúe sobre otros objetos). Además, las operaciones están estrechamente ligadas a los atributos, ya que sus acciones pueden depender de, o modificar, los valores de un atributo.
  • Identidad: El objeto tiene una identidad, que lo distingue de otros objetos, sin considerar su estado. Por lo general, esta identidad se crea mediante un identificador que deriva naturalmente de un problema (por ejemplo: un producto puede estar representado por un código, un automóvil, por un número de modelo, etc.).
EJEMPLO:
un objeto del mundo real, como la computadora. No necesitamos ser expertos en hardware para saber que una computadora está compuesta internamente por varios componentes: la tarjeta madre, el chip del procesador, un disco duro, una tarjeta de video, y otras partes más. El trabajo en conjunto de todos estos componentes hace operar a una computadora.