Está en la página 1de 7

OBJETO Y CLASE EN

PROGRAMACIÓN
POR: OMAR JAVIER SANDOVAL CHIMAL
OBJETO
Un objeto es una unidad dentro de un programa
informático que tiene un estado, y un
comportamiento. Es decir, tiene una serie de
datos almacenados y tareas que realiza con esos
datos en el tiempo de ejecución.

Estos objetos interactúan entre ellos en el


programa informático, cada objeto puede enviar y
recibir mensajes o procesar datos

Un objeto es una instancia de una clase, es decir


una entidad que se construye a partir de las
descripciones consignadas en una clase (datos y
funciones). Por tanto, un objeto se puede
entender como una "variable" que se declara del
tipo de dato de cierta clase. Un objeto es como tal
la entidad tangible que permite acceder a los
datos y funciones modeladas al interior de la clase
CLASE
Una clase es en general un modelo, receta
o plantilla que define el estado y
comportamiento de cierto tipo de objetos.
Una clase puede pensarse como una
colección de variables (atributos o
propiedades) y funciones (métodos) que
permiten representar un conjunto de datos
y especificar las operaciones o
procedimientos que permiten manipular
tales datos. Se puede inclusive entender
una clase como un tipo de dato
personalizado, similar a las estructuras
(structs), donde cada programador define
los miembros que va a tener su tipo de
dato. De hecho, los tipos de dato nativos
de C++ son en realidad clases.
PROGRAMACIÓN ORIENTADA A
OBJETOS
La programación orientada a objetos (POO, u OOP según sus siglas en inglés) es un paradigma de programación que viene
a innovar la forma de obtener resultados. Los objetos manipulan los datos de entrada para la obtención de datos de salida
específicos, donde cada objeto ofrece una funcionalidad especial.
La modularidad es la capacidad de dividir el problema en pequeñas partes independientes entre sí, esto va más allá de la
encapsulación de un simple procedimiento de la programación estructurada que hemos visto hasta ahora. Aquí se
encapsula un conjunto de operaciones y datos que tienen mucha relación entre sí formando un módulo.
Un lenguaje basado en objetos nos da la posibilidad de definir objetos y realizar operaciones sobre ellos y es similar al
paradigma de abstracción de datos. La adición de de los conceptos de de clases y herencia nos hace hablar de lenguajes
orientados a objetos. Un objeto es la instancia de una clase.
Mediante la herencia podemos reutilizar el comportamiento de una clase en la definición de nuevas clases.
Muchos de los objetos pre-diseñados de los lenguajes de programación actuales permiten la agrupación en bibliotecas o
librerías, sin embargo, muchos de estos lenguajes permiten al usuario la creación de sus propias bibliotecas.
Está basada en varias técnicas, incluyendo herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento.
Los objetos son entidades que tienen un determinado “estado”, “comportamiento (método)” e “identidad”:
La identidad es una propiedad de un objeto que lo diferencia del resto; dicho con otras palabras, es su identificador
(concepto análogo al de identificador de una variable o una constante).
Los métodos (comportamiento) y atributos (estado) están estrechamente relacionados por la propiedad de conjunto. Esta
propiedad destaca que una clase requiere de métodos para poder tratar los atributos con los que cuenta.
Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Las clases se utilizan para
representar entidades o conceptos. Cada clase es un modelo que define un conjunto de variables (el estado), y métodos
apropiados para operar con dichos datos (el comportamiento). Cada objeto creado a partir de la clase se
denomina instancia de la clase.
EJEMPLO
Imaginemos que hemos hecho un
coche coche controlado por
bluetooth y tenemos 5 botones
para las 4 direcciones y parar.
Creamos una clase llamada ‘Coche’
que se inicializa con los pines
donde conecto los dos motores del
coche.
CONSTRUCTOR
Los constructores son funciones miembro
especiales que sirven para inicializar un objeto de
una determinada clase al mismo tiempo que se
declara.

Los constructores son especiales por varios


motivos:

• Tienen el mismo nombre que la clase a la que


pertenecen.

• No tienen tipo de retorno, y por lo tanto no


retornan ningún valor.

• No pueden ser heredados.


• Por último, deben ser públicos, no tendría
ningún sentido declarar un constructor como
privado, ya que siempre se usan desde el
exterior de la clase, ni tampoco como
protegido, ya que no puede ser heredado.
DESTRUCTOR
Los destructores son funciones miembro especiales que sirven para
eliminar un objeto de una determinada clase. El destructor realizará
procesos necesarios cuando un objeto termine su ámbito temporal, por
ejemplo liberando la memoria dinámica utilizada por dicho objeto o
liberando recursos usados, como ficheros, dispositivos, etc.

Al igual que los constructores, los destructores también tienen algunas


características especiales:

• También tienen el mismo nombre que la clase a la que pertenecen,


pero tienen el símbolo ˜ delante.

• No tienen tipo de retorno, y por lo tanto no retornan ningún valor.


• No tienen parámetros.
• No pueden ser heredados.
• Deben ser públicos, no tendría ningún sentido declarar un destructor
como privado, ya que siempre se usan desde el exterior de la clase,
ni tampoco como protegido, ya que no puede ser heredado.

• No pueden ser sobrecargados, lo cual es lógico, puesto que no


tienen valor de retorno ni parámetros, no hay posibilidad de
sobrecarga.

Cuando se define un destructor para una clase, éste es llamado


automáticamente cuando se abandona el ámbito en el que fue
definido. Esto es así salvo cuando el objeto fue creado dinámicamente
con el operador new, ya que en ese caso, cuando es necesario
eliminarlo, hay que hacerlo explícitamente usando el operador delete.

En general, será necesario definir un destructor cuando nuestra clase


tenga datos miembro de tipo puntero, aunque esto no es una regla
estricta.

También podría gustarte