Introducción a la P.O.O.
Es importante aclarar desde un principio la diferencia que existe entre
programación orientada a objetos y un lenguaje orientado a objetos. La
programación orientada a objetos es una “filosofía”, un modelo de
programación, con su teoría y su metodología. Un lenguaje orientado a
objetos es un lenguaje de programación que permite el diseño de
aplicaciones orientadas a objetos.
El primer principio de la programación orientada a objetos es "divide y
vencerás“.
En Java, la programación orientada a objetos gira sobre algunos conceptos
clave: clases, objetos, miembros de datos, métodos y herencia.
P.O.O.: PROGRAMACIÓN ORIENTADA A OBJETOS
La idea es encapsular datos y métodos en objetos.
La programación orientada a objetos fue creada
para gestionar programas más grandes y
descomponerlos en unidades funcionales.
CLASES Y OBJETOS
Una clase es una plantilla desde la que se pueden crear objetos. La definición de
una clase incluye especificaciones formales para la clase y cualquier dato y
métodos incluidos en ella.
Un objeto es una instancia de una clase, al igual que una variable es una instancia
de un tipo de dato. Se puede pensar en una clase como el tipo de un objeto y se
puede pensar en el objeto como una instancia de una clase. Los objetos
encapsulan métodos y variables de instancia.
ATRIBUTOS Y MÉTODOS
Los miembros de datos son esas variables que forman parte de una clase y en
ellas se almacenan los datos que usa el objeto. El objeto soporta variables de
instancia, cuyos valores son específicos del objeto, y variables de clase, cuyos
valores son compartidos entre los objetos de esa clase.
Un método es una función construida en una clase u objeto. Se pueden tener
métodos de instancia y métodos de clase. Con objetos, se usan los métodos de
instancia, pero se puede usar un método de clase haciendo referencia,
simplemente, a la clase por su nombre, sin requerir ningún objeto.