Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Por definición una clase es una descripción de un objeto. De manera similar un objeto es definido
como una instancia de una clase. Un objeto está formado por atributos y comportamientos. Un
atributo es una característica del objeto, algo que el objeto “tiene”. Un comportamiento es algo
que el objeto “hace”.
Cada atributo de un objeto es representado por un campo en la clase. Cada comportamiento de
un objeto se convierte en un método de la clase.
Página 1 de 5
Universidad Tecnológica de El Salvador
Programación III MSc. René Alberto Castro Velásquez
1.2. POO.
La POO se originó de una
investigación realizada por
el Centro de Investigación
de Xerox en Palo Alto (PARC)
en los 1970s. La POO toma
un punto de vista
totalmente diferente para
desarrollar aplicaciones de
computadora. En lugar de
diseñar un programa
alrededor de las tareas que
se debían resolver, un
programa es diseñado
alrededor de los objetos en
el dominio del problema.
Puede pensar en la PP como
escribir un procedimiento para los verbos en el dominio del problema, tal como pagar a un
empleado o calcular impuestos. Puede pensar en la POO como escribir una clase para cada uno de
los nombres en el dominio del problema.
Página 2 de 5
Universidad Tecnológica de El Salvador
Programación III MSc. René Alberto Castro Velásquez
2. FUNDAMENTOS DE LA POO
La POO contiene algunos conceptos fundamentales que
permiten la construcción de aplicaciones pertinentes, los
cuales son presentados a continuación.
2.2. ENCAPSULAMIENTO.
Todo programa está compuesto de los dos
elementos fundamentales siguientes:
Sentencias del programa (código): esta
es la parte de un programa que realiza
acciones y se les conoce como
funciones.
Página 3 de 5
Universidad Tecnológica de El Salvador
Programación III MSc. René Alberto Castro Velásquez
Datos del programa: los datos son la información del programa que es afectada por las
funciones del programa.
El encapsulamiento es un concepto de la POO que enlaza los datos y las funciones que manipulan
los datos y mantiene a ambos seguros de cualquier interferencia y mal uso externos. El
encapsulamiento de datos conduce a un concepto importante de la POO: ocultamiento de datos.
El encapsulamiento de datos es un mecanismo de agrupamiento de datos y las funciones que los
usan, por lo que la abstracción de datos es un mecanismo de exponer al usuario sólo las interfaces
mientras oculta los detalles de la implementación.
2.3. HERENCIA.
Uno de los conceptos más importantes en la POO es la herencia, la cual permite definir una clase
en términos de otra, haciendo más fácil crear y mantener una aplicación. Esto también
proporciona una oportunidad para reusar funcionalidad de código y agilizar el tiempo de
implementación.
Cuando se crea una clase, en lugar de escribir
completamente nuevos miembros de datos y
funciones, el programador puede designar que la
nueva clase herede los miembros de una clase
existente. Esta clase existente es llamada la clase base
y la nueva clase es referida como la clase derivada.
La idea de la implementación de herencia puede ser asociada a una relación "ES UN". Por ejemplo,
un mamífero ES UN animal, un perro ES UN mamífero, por lo que un perro ES UN animal también,
y así sucesivamente.
El concepto de herencia será ampliado más adelante en el curso.
2.4. SOBRECARGA.
Consiste en la especificación de más de una definición para
el mismo nombre de función en el mismo ámbito.
Una declaración sobrecargada es una declaración que ha
sido declarada con el mismo nombre que una declaración
previamente declarada en el mismo ámbito, excepto que
ambas declaraciones tienen diferentes argumentos y
obviamente diferente definición (implementación).
Cuando se llama una función sobrecargada, el compilador
determina la definición más apropiada a usar comparando
los tipos de argumento especificado en las definiciones. El proceso de seleccionar la función
sobrecargada más apropiada es llamado resolución de sobrecarga.
El concepto de sobrecarga será ampliado más adelante en el curso.
Página 4 de 5
Universidad Tecnológica de El Salvador
Programación III MSc. René Alberto Castro Velásquez
Página 5 de 5