Saltar al contenido

Programación Orientada a Objetos (POO). Introducción.

¿Qué se pretende con los lenguajes de programación orientada a objetos? Realmente lo que se pretende con este concepto, es que los elementos de un programa se asemejen a la realidad.

Como hablamos anteriormente, java es un lenguaje de programación 100% orientado a objetos. En java, todo se considera como un objeto.

¿Y debo aprender programación orientada a objetos?

Totalmente, la respuesta es si. Así, podrás crear aplicaciones a partir de pequeños bloques de código. Realmente, esto es una gran ventaja, ya que gracias a eso, podemos modularizar y organizar la aplicación.

¿Te acuerdas cuando hablamos por primera vez de las clases en java? Las habíamos definido de una forma muy general. Ahora llega el momento de profundizar en este tema para que todo vaya cogiendo sentido. Estamos hablando que java es un lenguaje en el que todo se considera un objeto, ¿verdad? Pero…

¿Qué es un objeto en java?

Cuando en java hablamos de objetos, nos estamos refiriendo a elementos que poseen características y comportamientos.

Al igual que en la vida real existen objetos como son un coche o una mesa, en java pasa exactamente lo mismo. Por ejemplo en la vida real podemos tener un objeto llamado coche, ¿verdad?

Pues ese coche en la vida real tiene una serie de características. Tiene un color, un ancho, un alto, etc. Además también tiene una serie de comportamientos. Puede arrancar, acelerar, frenar, girar, etc.

En definitiva, podemos definir a un objeto en POO, como un conjunto de datos y funciones relacionadas.

¿Pero que tiene que ver los objetos y las clases en java?

Ahora llega el momento de aclarar esto que llamamos clases en java. Efectivamente, habíamos dicho que las clases en java son archivos «.java» que contenían variables y métodos o funciones. Y realmente esa es la definición rápida por decirlo de alguna manera.

Ahora que ya tienes una idea de lo que es un objeto en java, profundizamos en el concepto de clase.

Una clase en java, es un archivo «.java» que contiene las características de un objeto y aquello que puede hacer, es decir, los métodos o funciones.

A modo de símil con lo que hablamos en el artículo de introducción a las clases de java, una clase en java contiene.

  • Las características de un objeto. Es lo que llamamos variables y es lo que realmente llamaremos a partir de ahora atributos de un objeto. En el caso del coche que hablamos antes, los atributos del objeto serían el color, la marca, la matrícula, etc.
  • Los métodos o funciones que contiene esa clase, es lo que llamaremos métodos o funciones y hace referencia a lo que el objeto puede hacer. Si hablamos de un coche pues podrá girar, arrancar, frenar, aparcar, etc.

Definitivamente, una clase en java es un archivo «.java» que contiene las características y propiedades de un objeto. En lenguaje de andar por casa, sería el envoltorio de un objeto. Todas las clases de la API de java, realmente, son objetos.

Propiedades de la programación orientada a objetos.

  • Abstracción. Cuando utilizamos la programación orientada a objetos, nos basamos, principalmente, en qué hace el objeto y para qué ha sido creado. Por consiguiente, aislamos o abstraemos otros factores, como la implementación del programa en cuestión.
  • Encapsulamiento. Con esta propiedad, se pretende ocultar los datos de los objetos de cara al mundo exterior. De esta manera, del objeto solo se conocerá su esencia y qué es lo que pretendemos hacer con él.
  • Modularidad. Esto quiere decir que vamos a tener una serie de objetos que van a ser independientes unos de otros. De esta forma se podrán reutilizar.
  • Jerarquía. Nos referimos a que vamos a tener una serie de objetos que desciendan de otros
  • Polimorfismo. Nos va a permitir el envío de mensajes iguales a diferentes tipos de objetos. Solo se debe conocer la forma en la que debemos contestar a estos mensajes.

¿Por donde empezar a programar en java?

Realmente cuando se empieza a estudiar un lenguaje de programación, se empieza realizando ejercicios básicos. En ellos se comienza por aprender como se saca un mensaje por pantalla, o bien como se leen datos que un usuario introduce por teclado.

En este caso, como ya hemos visto lo que son las clases en java y de que están compuestas, llega el momento de realizar ejemplos prácticos básicos. Para ello comenzaremos a ver lo que es la clase System de la API de java.