Anda di halaman 1dari 14

12/3/2018 poo | Programación Orientada a Objetos(POO)

Programación Orientada a Objetos(POO)

Universidad Nacional Experimental del Tachira –


Departamento de Informatica – Computación II

Archivo de la etiqueta: poo

Mapa Mental Referente a la POO y sus Pilares


Fundamentales

DICIEMBRE 13, 2013 | COMPU2POO | COMPU, MAPA, MENTAL, POO | DEJA UN


COMENTARIO
Aquí podrás visualizar (h ps://drive.google.com/file/d/0B5IaIqVamJrmRjIwV1VIeV9kdUU/edit?
usp=sharing)el Mapa mental.

https://compu2poo.wordpress.com/tag/poo/ 1/14
12/3/2018 poo | Programación Orientada a Objetos(POO)
Anuncios

Report this ad

Report this ad

Mapa conceptual de lo aprendido en la unidad

DICIEMBRE 13, 2013 | COMPU2POO | COMPU, CONCEPTUAL, MAPA, POO | DEJA UN


COMENTARIO
Aquí podrás visualizar (h ps://drive.google.com/file/d/0B5IaIqVamJrmRkt5SWtybGx3YXc/edit?
usp=sharing) el mapa conceptual realizado.

(h ps://compu2poo.files.wordpress.com/2013/12/imag-prog-poo1.jpg)

https://compu2poo.wordpress.com/tag/poo/ 2/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

Programación Orientada a Objetos (POO).


Conceptos Basicos

NOVIEMBRE 29, 2013 | COMPU2POO | 2, OBJETOS, OPP, ORIENTADA, POO, PROGRAMACION,


UNET | DEJA UN COMENTARIO
CONCEPTOS BÁSICOS DE LA POO.

Para entender este modelo vamos a revisar 4 conceptos básicos:

1.-Objetos

2.-Clases

3.-Herencia

4.-Envío de mensajes

1. Objetos

Entender que es un objeto es la clave para entender cualquier lenguaje orientado a objetos.

Existen muchas definiciones que se le ha dado al Objeto. Primero empecemos entendiendo que es un
objeto del mundo real. Un objeto del mundo real es cualquier cosa que vemos a nuestro alrededor.
Digamos que para leer este artículo lo hacemos a través del monitor y una computadora, ambos son
objetos, al igual que nuestro teléfono celular, un árbol o un automóvil.

Analicemos un poco más a 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.
Internamente, cada uno de estos componentes puede ser sumamente complicado y puede ser
fabricado por diversas compañías con diversos métodos de diseño. Pero nosotros no necesitamos
saber cómo trabajan cada uno de estos componentes, como saber que hace cada uno de los chips de la
tarjeta madre, o cómo funciona internamente el procesador. Cada componente es una unidad
autónoma, y todo lo que necesitamos saber de adentro es cómo interactúan entre sí los componentes,
saber por ejemplo si el procesador y las memorias son compatibles con la tarjeta madre, o conocer
donde se coloca la tarjeta de video. Cuando conocemos como interaccionan los componentes entre sí,
podremos armar fácilmente una computadora.

¿Que tiene que ver esto con la programación? La programación orientada a objetos trabaja de esta
manera. Todo el programa está construido en base a diferentes componentes (Objetos), cada uno
tiene un rol específico en el programa y todos los componentes pueden comunicarse entre ellos de
formas predefinidas.

Todo objeto del mundo real tiene 2 componentes: características y comportamiento.

https://compu2poo.wordpress.com/tag/poo/ 3/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

Por ejemplo, los automóviles tienen características (marca, modelo, color, velocidad máxima, etc.) y
comportamiento (frenar, acelerar, retroceder, llenar combustible, cambiar llantas, etc.).

Los Objetos de Software, al igual que los objetos del mundo real, también tienen características y
comportamientos. Un objeto de software mantiene sus características en una o más “variables”, e
implementa su comportamiento con “métodos”. Un método es una función o subrutina asociada a un
objeto.

(h ps://compu2poo.files.wordpress.com/2013/11/obeto.png)

Para redondear estas ideas, imaginemos que tenemos estacionado en nuestra cochera un Porche color
rojo que corre hasta 310km/h. Si pasamos ese objeto del mundo real al mundo del software,
tendremos un objeto Automóvil con sus características predeterminadas:

Color = Rojo; VelocidadMax = 310km/h; Ruedas = Bridgestone; Motor = VTEC;

Cuando a las características del objeto le ponemos valores decimos que el objeto tiene estados. Las
variables almacenan los estados de un objeto en un determinado momento.

-Componentes de un objeto: atributos, identidad, relaciones y métodos.

– Identificación de un objeto: un objeto se representa por medio de una tabla o entidad que esté
compuesta por sus atributos y funciones correspondientes.

En comparación con un lenguaje imperativo, una “variable” no es más que un contenedor interno del
atributo del objeto o de un estado interno, así como la “función” es un procedimiento interno del
método del objeto.

Definición teórica: Un objeto es una unidad de código compuesto de variables y métodos


relacionados.

(h ps://compu2poo.files.wordpress.com/2013/11/poohumanos1.png)

https://compu2poo.wordpress.com/tag/poo/ 4/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

2. Las Clases

En el mundo real, normalmente tenemos muchos objetos del mismo tipo. Por ejemplo, nuestro
teléfono celular es sólo uno de los miles que hay en el mundo. Si hablamos en términos de la
programación orientada a objetos, podemos decir que nuestro objeto celular es una instancia de una
clase conocida como “celular”. Los celulares tienen características (marca, modelo, sistema operativo,
pantalla, teclado, etc.) y comportamientos (hacer y recibir llamadas, enviar mensajes multimedia,
transmisión de datos, etc.). Cuando se fabrican los celulares, los fabricantes aprovechan el hecho de
que los celulares comparten esas características comunes y construyen modelos o plantillas comunes,
para que a partir de esas se puedan crear muchos equipos celulares del mismo modelo. A ese modelo
o plantilla le llamamos CLASE, y a los equipos que sacamos a partir de ella la llamamos OBJETOS

(h ps://compu2poo.files.wordpress.com/2013/11/clases.gif)

Esto mismo se aplica a los objetos de software, se puede tener muchos objetos del mismo tipo y
mismas características.

Definición teórica: La clase es un modelo o prototipo que define las variables y métodos comunes
a todos los objetos de cierta clase. También se puede decir que una clase es una plantilla genérica
para un conjunto de objetos de similares características.

Por otro lado, una instancia de una clase es otra forma de llamar a un objeto. En realidad no existe
diferencia entre un objeto y una instancia. Sólo que el objeto es un término más general, pero los
objetos y las instancias son ambas representación de una clase.

Definición Teórica: Una instancia es un objeto de una clase en particular.

(h ps://compu2poo.files.wordpress.com/2013/11/image21.jpg)

3. Herencia

https://compu2poo.wordpress.com/tag/poo/ 5/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

La herencia es uno de los conceptos más cruciales en la POO. La herencia básicamente consiste en que
una clase puede heredar sus variables y métodos a varias subclases (la clase que hereda es llamada
superclase o clase padre). Esto significa que una subclase, aparte de los atributos y métodos propios,
tiene incorporados los atributos y métodos heredados de la superclase. De esta manera se crea una
jerarquía de herencia.

Por ejemplo, imaginemos que estamos haciendo el análisis de un Sistema para una tienda que vende
y repara equipos celulares.

(h ps://compu2poo.files.wordpress.com/2013/11/her1.jpg)

En el gráfico vemos 2 Clases más que posiblemente necesitemos para crear nuestro Sistema. Esas 2
Clases nuevas se construirán a partir de la Clase Celular existente. De esa forma utilizamos el
comportamiento de la Súper Clase.

En general, podemos tener una gran jerarquía de Clases tal y como vemos en el siguiente gráfico:

(h ps://compu2poo.files.wordpress.com/2013/11/her2.jpg)

4. Envío de Mensajes :

Un objeto es inútil si está aislado. El medio empleado para que un objeto interactúe con otro son los
mensajes. Hablando en términos un poco más técnicos, los mensajes son invocaciones a los métodos
de los objetos.

5. Propiedad o atributo:

contenedor de un tipo de datos asociados a un objeto (o a una clase de objetos), que hace los datos
visibles desde fuera del objeto y esto se define como sus características predeterminadas, y cuyo valor
puede ser alterado por la ejecución de algún método.

https://compu2poo.wordpress.com/tag/poo/ 6/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

6. Estado interno:

es una variable que se declara privada, que puede ser únicamente accedida y alterada por un método
del objeto, y que se utiliza para indicar distintas situaciones posibles para el objeto (o clase de
objetos). No es visible al programador que maneja una instancia de la clase.

7. Polimorfismo:

El polimorfismo se refiere a la posibilidad de enviar un mensaje a un grupo de objetos cuya


naturaleza puede ser heterogénea. El único requisito que deben cumplir los objetos que se utilizan de
manera polimórfica es saber responder al mensaje que se les envía.

La apariencia del código puede ser muy diferente dependiendo del lenguaje que se utilice, más allá
de las obvias diferencias sintácticas.

Por ejemplo, en un lenguaje de programación que cuenta con un sistema de tipos dinámico (en los
que las variables pueden contener datos de cualquier tipo u objetos de cualquier clase)
como Smalltalk no se requiere que los objetos que se utilizan de modo polimórfico sean parte de una
jerarquía de clases.

En lenguajes basados en clases y con un sistema de tipos de datos fuerte (independientemente de si la


verificación se realiza en tiempo de compilación o de ejecución), es posible que el único modo de
poder utilizar objetos de manera polimórfica sea que compartan una raíz común, es decir, una
jerarquía de clases, ya que esto proporciona la compatibilidad de tipos de datos necesaria para que
sea posible utilizar una misma variable de referencia (que podrá apuntar a objetos de diversas
subclases de dicha jerarquía) para enviar el mismo mensaje (o un grupo de mensajes) al grupo de
objetos que se tratan de manera polimórfica.

En Java, es frecuente y profusamente aconsejada la utilización de interfaces (que es un mecanismo del


lenguaje que se emplea por medio de la palabra clave Interface) para proveer la necesaria
concordancia de tipos para hacer posible el polimorfismo, también como un contrato que debe
cumplir cualquier clase que implemente una cierta interfaz y como una forma de documentación
para los desarrolladores. A veces, en la literatura que refiere específicamente a Java se hace mención a
“herencia y polimorfismo de interfaces”, lo que no concuerda con los conceptos de la programación
orientada a objetos porque una clase que implementa una interfaz sólo obtiene su tipo de datos y la
obligación de implementar sus métodos, no obtiene comportamiento ni de atributos. Esto muchas
veces resulta paradójico porque en Java frecuentemente se utiliza la mal llamada “herencia de
interfaces” para dotar a una clase con un tipo adicional (o varios) para que su uso en combinación con
la agregación (colaboración o composición) permita evitar la necesidad de la herencia múltiple y
favorezca una utilización más amplia del polimorfismo.

No obstante, el uso de una jerarquía de clases como paso previo, es muy habitual incluso en aquellos
lenguajes en los que es posible prescindir de tal jerarquía, ya que, desde una perspectiva conceptual,
se puede decir que al pertenecer los “objetos polimórficos” a subclases de una misma jerarquía, se
asegura la equivalencia semántica de los mensajes que se invocarán de modo polimórfico. Por esto, en
programación orientada a objetos a veces se denomina al polimorfismo como “polimorfismo de
subclase (o de subtipo)”.

En resumen, en la programación orientada a objetos, la esencia del polimorfismo no atañe a la clase o


prototipo de la que provienen los objetos. Aun así, en los lenguajes basados en clases, es habitual (y
en algunos tal vez sea el único modo) que dichos objetos pertenezcan a subclases pertenecientes a una
misma jerarquía. Entonces, el polimorfismo debe verse como una forma flexible de usar un grupo de
objetos (como si fueran sólo uno). Podría decirse que el polimorfismo en esencia refiere al
comportamiento de los objetos, no a su pertenencia a una jerarquía de clases (o a sus tipos de datos).
https://compu2poo.wordpress.com/tag/poo/ 7/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

Lo anterior se hace aún más evidente en lenguajes de programación orientada a objetos basados en
prototipos, como Self, en los que las clases no existen.

Además, es importante remarcar que si un cierto grupo de objetos pueden utilizarse de manera
polimórfica es porque, en última instancia, todos ellos saben responder a un cierto mensaje (o a
varios), pero dado que esos mismos objetos generalmente contendrán otros métodos (que otros
objetos en dicho grupo no contienen), difícilmente se pueda decir lisa y llanamente que los objetos
son polimórficos; lo correcto es decir que esos objetos se pueden utilizar de modo polimórfico para un
cierto conjunto de mensajes.

Un ejemplo. Podemos crear dos clases distintas: Pez y Ave que heredan de la superclase Animal.

La claseAnimal tiene el método abstracto mover que se implementa de forma distinta en cada una de las
subclases (peces y aves se mueven de forma distinta). Entonces, un tercer objeto puede enviar el
mensaje mover a un grupo de objetos Pez y Ave por medio de una variable de referencia de
clase Animal, haciendo así un uso polimórfico de dichos objetos respecto del mensaje mover.

El concepto de polimorfismo, desde una perspectiva más general, se puede aplicar tanto a funciones
como a tipos de datos. Así nacen los conceptos de funciones polimórficas y tipos polimórficos. Las
primeras son aquellas funciones que pueden evaluarse o ser aplicadas a diferentes tipos de datos de
forma indistinta; los tipos polimórficos, por su parte, son aquellos tipos de datos que contienen al
menos un elemento cuyo tipo no está especificado.

h p://1.bp.blogspot.com/-L-
mInVZRcHA/TtUX3PaqPuI/AAAAAAAAIn4/gn75DGwn9OI/s1600/sergio_ClaseAbstracta.jpg
(h p://1.bp.blogspot.com/-L-
mInVZRcHA/TtUX3PaqPuI/AAAAAAAAIn4/gn75DGwn9OI/s1600/sergio_ClaseAbstracta.jpg)

Programación Orientada a Objetos (POO)


Definición, Origen y Características.

NOVIEMBRE 29, 2013 | COMPU2POO | 1, C++, INTRODUCCION, OBJETOS, OPP, ORIENTADA,


POO, PROGRAMACION | DEJA UN COMENTARIO

Como una Pequeña introducción de la Programación Orientada a Objetos decimos que esta ha
tomado las mejores representaciones de la programación estructurada y los ha acoplado con varios
conceptos nuevos y potentes que inducen a contemplar las actividades de programación desde un
nuevo punto de vista.

Permite descomponer más cómodamente un problema en subgrupos de partes relacionadas del


problema. Entonces, utilizando el lenguaje se pueden interpretar estos subgrupos a unidades auto
contenidas llamadas objetos. El término Programación Orientada a Objetos (POO), hoy en día
considerablemente utilizado, es difícil de definir, ya que no es una opinión nueva, sino que ha sido el

https://compu2poo.wordpress.com/tag/poo/ 8/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

progreso de técnicas de programación desde los inicios de la década de los setenta, aunque sea en la
década de los noventa cuando ha incrementado su difusión, uso y popularidad. No obstante, se
puede definir POO como una técnica o manera de programación que utiliza objetos como bloque
esencial de construcción. Un objeto es una unidad que incluye datos y las funciones que operan sobre
esos datos.

(h ps://compu2poo.files.wordpress.com/2013/11/poo11.png)

La programación orientada a objetos es una de las formas más populares de programar y viene
teniendo gran acogida en el desarrollo de proyectos de software desde los últimos años. Esta acogida
se debe a sus grandes capacidades y ventajas frente a las antiguas formas de programar. Es un
paradigma que utiliza objetos como elementos fundamentales en la construcción de la solución.
Surge en los años 70. Un objeto es una abstracción de algún hecho o ente del mundo real que tiene
atributos que representan sus características o propiedades y métodos que representan su
comportamiento o acciones que realizan. Todas las propiedades y métodos comunes a los objetos se
encapsulan o se agrupan en clases. Una clase es una plantilla o un prototipo para crear objetos; por
eso se dice que los objetos son instancias de clases. Hoy en día la tecnología orientada a objetos ya no
se aplica solamente a los lenguajes de programación, además se viene aplicando en el análisis y
diseño con mucho éxito, al igual que en las bases de datos. Es que para hacer una buena
programación orientada a objetos hay que desarrollar todo el sistema aplicando esta tecnología, de
ahí la importancia del análisis y el diseño orientado a objetos.

ORIGEN DE LA POO (PROGRAMACIÓN ORIENTADA A OBJETOS)

Los conceptos de la programación orientada a objetos tienen origen enSimula 67, un lenguaje
diseñado para hacer simulaciones, creado porOle-Johan DahlyKristen Nygaard, del Centro de
Cómputo Noruego enOslo. En este centro se trabajaba en simulaciones de naves, que fueron
confundidas por la explosión combinatoria de cómo las diversas cualidades de diferentes naves
podían afectar unas a las otras. La idea surgió al agrupar los diversos tipos de naves en diversas
clases de objetos, siendo responsable cada clase de objetos de definir sus propios datos y
comportamientos. Fueron refinados más tarde enSmalltalk, desarrollado en Simula en Xerox PARC
(cuya primera versión fue escrita sobre Basic) pero diseñado para ser un sistema completamente
dinámico en el cual los objetos se podrían crear y modificar “sobre la marcha” (en tiempo de
ejecución) en lugar de tener un sistema basado en programas estáticos.

https://compu2poo.wordpress.com/tag/poo/ 9/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

(h ps://compu2poo.files.wordpress.com/2013/11/chido-2008121.jpg)

La programación orientada a objetos se fue convirtiendo en el estilo de programación dominante a


mediados de los años ochenta, en gran parte debido a la influencia de C++, una extensión del lenguaje
de programación C. Su dominación fue consolidada gracias al auge de las Interfaces gráficas de
usuario, para las cuales la programación orientada a objetos está particularmente bien adaptada. En
este caso, se habla también de programación dirigida por eventos.

Las características de orientación a objetos fueron agregadas a muchos lenguajes existentes durante
ese tiempo, incluyendo Ada, BASIC, LispyPascal, entre otros.

La adición de estas características a los lenguajes que no fueron diseñados inicialmente para ellas
condujo a menudo a problemas de compatibilidad y en la capacidad de mantenimiento del código.
Los lenguajes orientados a objetos “puros”, por su parte, carecían de las características de las cuales
muchos programadores habían venido a depender. Para saltar este obstáculo, se hicieron muchas
tentativas para crear nuevos lenguajes basados en métodos orientados a objetos, pero permitiendo
algunas características imperativas de maneras “seguras”. ElEiffelde Bertrand Meyer fue un
temprano y moderadamente acertado lenguaje con esos objetivos, pero ahora ha sido esencialmente
reemplazado por Java, en gran parte debido a la aparición de Internety a la implementación de la
máquina virtual de Java en la mayoría de navegadores.PHPen su versión 5 se ha modificado; soporta
una orientación completa a objetos, cumpliendo todas las características propias de la orientación a
objetos.

Primera Etapa. Lenguajes Ensambladores. La unidad de programación es la instrucción, compuesta


de un operador y los operandos. El nivel de abstracción que se aplica es muy bajo.

Segunda Etapa. Lenguajes de Programación: Fortran, Algol, Cobol. Los objetos y operaciones del
mundo real se podían modelar mediante datos y estructuras de control separadamente. En esta etapa
el diseño del software se enfoca sobre la representación del detalle procedimental y en función del
lenguaje elegido. Conceptos como: refinamiento progresivo, modularidad procedimientos y
programación estructurada son conceptos básicos que se utilizan en esta etapa. Existe mayor
abstracción de datos.
https://compu2poo.wordpress.com/tag/poo/ 10/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

Tercera Etapa. Se introducen en esta etapa los conceptos de abstracción y ocultación de la


información. Programación Orientada a objetos.

Cuarta Etapa. A partir de los años setenta se trabaja sobre una nueva clase de lenguajes de simulación
y sobre la construcción de prototipos tales como Simula-70 y basados en parte de éste, el Smalltalk.
En estos lenguajes, la abstracción de datos tiene una gran importancia y los problemas del mundo
real se representan mediante objetos de datos a los cuales se les añade el correspondiente conjunto de
operaciones asociados a ellos. Términos como Abstracción de datos, objeto, encapsulación entre otros,
son conceptos básicos sobre la que se fundamenta la POO.

(h ps://compu2poo.files.wordpress.com/2013/11/origen1.jpg)

CARACTERÍSTICAS DE LA POO (PROGRAMACIÓN ORIENTADA A OBJETOS)

Existe un acuerdo acerca de qué características contempla la “orientación a objetos”. Las


características siguientes son las más importantes:

Abstracción: denota las características esenciales de un objeto, donde se capturan sus


comportamientos. Cada objeto en el sistema sirve como modelo de un “agente” abstracto que puede
realizar trabajo, informar y cambiar su estado, y “comunicarse” con otros objetos en el sistema sin
revelar cómo se implementan estas características. Los procesos, las funciones o los métodos pueden
también ser abstraídos, y, cuando lo están, una variedad de técnicas son requeridas para ampliar una
abstracción. El proceso de abstracción permite seleccionar las características relevantes dentro de un
conjunto e identificar comportamientos comunes para definir nuevos tipos de entidades en el mundo
real. La abstracción es clave en el proceso de análisis y diseño orientado a objetos, ya que mediante
ella podemos llegar a armar un conjunto de clases que permitan modelar la realidad o el problema
que se quiere atacar.

Encapsulamiento: significa reunir todos los elementos que pueden considerarse pertenecientes a una
misma entidad, al mismo nivel de abstracción. Esto permite aumentar la cohesión de los
componentes del sistema. Algunos autores confunden este concepto con el principio de ocultación,
principalmente porque se suelen emplear conjuntamente.

https://compu2poo.wordpress.com/tag/poo/ 11/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

Modularidad: se denomina modularidad a la propiedad que permite subdividir una aplicación en


partes más pequeñas (llamadas módulos), cada una de las cuales debe ser tan independiente como
sea posible de la aplicación en sí y de las restantes partes. Estos módulos se pueden compilar por
separado, pero tienen conexiones con otros módulos. Al igual que la encapsulación, los lenguajes
soportan la modularidad de diversas formas.

Principio de ocultación: cada objeto está aislado del exterior, es un módulo natural, y cada tipo de
objeto expone una interfaz a otros objetos que específica cómo pueden interactuar con los objetos de
la clase. El aislamiento protege a las propiedades de un objeto contra su modificación por quien no
tenga derecho a acceder a ellas; solamente los propios métodos internos del objeto pueden acceder a
su estado. Esto asegura que otros objetos no puedan cambiar el estado interno de un objeto de
manera inesperada, eliminando efectos secundarios e interacciones inesperadas. Algunos lenguajes
relajan esto, permitiendo un acceso directo a los datos internos del objeto de una manera controlada y
limitando el grado de abstracción. La aplicación entera se reduce a un agregado o rompecabezas de
objetos.

Polimorfismo: comportamientos diferentes, asociados a objetos distintos, pueden compartir el mismo


nombre; al llamarlos por ese nombre se utilizará el comportamiento correspondiente al objeto que se
esté usando. O, dicho de otro modo, las referencias y las colecciones de objetos pueden contener
objetos de diferentes tipos, y la invocación de un comportamiento en una referencia producirá el
comportamiento correcto para el tipo real del objeto referenciado. Cuando esto ocurre en “tiempo de
ejecución”, esta última característica se llama asignación tardía o asignación dinámica. Algunos
lenguajes proporcionan medios más estáticos (en “tiempo de compilación”) de polimorfismo, tales
como las plantillas y la sobrecarga de operadores de C++.

Herencia: las clases no están aisladas, sino que se relacionan entre sí, formando una jerarquía de
clasificación. Los objetos heredan las propiedades y el comportamiento de todas las clases a las que
pertenecen. La herencia organiza y facilita el polimorfismo y el encapsulamiento, permitiendo a los
objetos ser definidos y creados como tipos especializados de objetos preexistentes. Estos pueden
compartir (y extender) su comportamiento sin tener que volver a implementarlo. Esto suele hacerse
habitualmente agrupando los objetos en clases y estas en árboles o enrejados que reflejan un
comportamiento común. Cuando un objeto hereda de más de una clase se dice que hay herencia
múltiple.

Recolección de basura: la recolección de basura o garbage collector es la técnica por la cual el entorno
de objetos se encarga de destruir automáticamente, y por tanto desvincular la memoria asociada, los
objetos que hayan quedado sin ninguna referencia a ellos. Esto significa que el programador no debe
preocuparse por la asignación o liberación de memoria, ya que el entorno la asignará al crear un
nuevo objeto y la liberará cuando nadie lo esté usando. En la mayoría de los lenguajes híbridos que se
extendieron para soportar el Paradigma de Programación Orientada a Objetos como C++ Object
Pascal, esta característica no existe y la memoria debe desasignarse expresamente.

https://compu2poo.wordpress.com/tag/poo/ 12/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

(h ps://compu2poo.files.wordpress.com/2013/11/poo11.jpg)

(h ps://compu2poo.files.wordpress.com/2013/11/m11.png)

Blog de WordPress.com.

https://compu2poo.wordpress.com/tag/poo/ 13/14
12/3/2018 poo | Programación Orientada a Objetos(POO)

https://compu2poo.wordpress.com/tag/poo/ 14/14

Anda mungkin juga menyukai