Aprende a programar desde cero en Java. Curso paso a paso

Si has ingresado en esta sección, es para saber alguna de las siguientes cosas: ¿Cómo programar en Java?, ¿Qué diferencia a Java de algunos otros lenguajes de programación?, ¿Por qué programar en Java? y algunas cosas más. En esta sección responderemos estas preguntas y aprenderemos en qué consiste programar en Java y sus conceptos principales, los cuales iremos desarrollando en éste articulo y a lo largo de todo el curso de Java del sitio, así que comencemos:

Java es un lenguaje 100% orientado a objetos de alto nivel, para programar en Java, así sea la aplicación más básica siempre necesitaremos como mínimo una clase con el método principal (main). Dado que Java es un lenguaje de alto nivel, hay muchos conceptos que se facilitan en comparación a otros lenguajes de programación, el ejemplo más claro es el manejo de punteros y gestión de memoria, los cuales son bastante fáciles en Java (es algo prácticamente automático) mientras que en C y C++ es un poco más complicado; sin embargo no todo es bueno, pues su velocidad disminuye al necesitar de un mayor número de instrucciones y el programador no tiene control sobre algunas cosas pero no te preocupes por esto, Java es un lenguaje bastante usado, extendido y poderoso. Actualmente programar en Java es bastante sencillo e intuitivo con la correcta documentación y dedicación. Comencemos:

Un ejemplo para programar en Java

A modo de ilustración, imaginemos que tenemos una fábrica de galletas, vendemos diferentes tipos de galletas con diferentes formas sabores y colores, evidentemente al tener diferentes formas necesitaremos entonces diferentes moldes para las galletas que fabricamos, necesitaremos diferentes recetas para el sabor de cada una y por ultimo diferentes colores o maneras de darle color a nuestras galletas. Espero que hasta ahora vayamos bien, vamos entonces a juntar nuestra historia con los conceptos fundamentales de Java.

¿Qué son las clases en Java?

Una clase en lenguaje de programación Java se puede entender como un prototipo que define las variables y los métodos comunes a un cierto tipo de instancias.

En nuestro ejemplo de la fábrica de galletas, la clase sería uno de los moldes para galletas, junto con los métodos para colorearlas y la receta (método para prepararlas). Quiere decir que en nuestro programa de Java tendremos una manera de especificar las caracteristicas de la galleta dado que hay diferentes moldes de galletas.

En java las clases son las matrices de las que luego se pueden crear múltiples instancias del mismo tipo. La clase define las variables y los métodos comunes a las instancias de ese tipo (el tipo de la clase creada), pero luego, cada instancia de esta clase tendrá sus propios valores (sus propio molde, color y receta) y compartirán las mismas funciones.

En java, primero deberemos crear una clase antes de poder crear instancias o ejemplares de esa clase. Evidentemente primero necesitamos los moldes y demás para poder hacer las galletas.

¿Qué son los objetos en Java?

En el ámbito del lenguaje de programación Java, un objeto es básicamente una instancia de una clase (las instancias de las que hablábamos hace un momento).

Para nuestro ejemplo de la fábrica de galletas, los objetos vendrían siendo cada una de las diferentes galletas obtenidas de los moldes definidos (clases).

Lo más importante de los objetos en Java es que permiten tener un control total sobre "quién" o "qué" puede acceder a sus miembros, es decir, los objetos pueden tener miembros públicos a los que podrán acceder otros objetos o miembros privados a los que sólo puede acceder él. Estos miembros pueden ser tanto variables como funciones.

El gran beneficio de todo esto es la encapsulación. En java el código fuente de un objeto puede escribirse y mantenerse de forma independiente a los otros objetos contenidos en la aplicación (mas adelante veremos esto con más detalles).

¿Qué son los mensajes en Java?

Para poder crear una aplicación Java que sea un tanto robusta, es muy probable que necesitemos más de un objeto (más de una instancia de una clase), y probablemente algunos de estos objetos no deben estar aislados unos de otros, pues bien, para comunicarse, esos objetos se envían mensajes entre sí.

Los mensajes son simples llamadas a las funciones o métodos del objeto en particular con el cual se quiere comunicar para solicitarle que ejecute alguna "accion" según sus métodos y/o atributos.

En nuestro ejemplo de la fábrica de galletas, los mensajes vendrían siendo la manera de manipular la maquina encargada de crear galletas diciéndole qué receta, colores o que molde usar en un momento cualquiera.

¿Qué es la herencia en Java?

¿Qué significa esto de la herencia?, ¿quién hereda qué?, bueno calma, no entres en pánico, esto sólo significa que en Java puedes crear una clase partiendo de otra que ya exista.

Es decir, puedes crear una clase a través de una clase existente, y ésta clase tendrá todas las variables y los métodos de su "superclase", y además se le podrán añadir otras variables y métodos propios.

Se llama "Superclase" a aquella clase de la cual desciende una clase, más adelante veremos un poco más de esto al detalle.

Vamos a ver un pequeño ejemplo basado en la fábrica de galletas que hemos estado tratando a lo largo de este artículo. Vamos a crear una pequeña clase llamada "Galleta" que contendrá los diferentes atributos.

Ejemplo de una clase en Java

	
public class Galleta
{
	private String molde;
	private String receta;
	private String color;
	
	public Galleta()
	{
		//Constructor
	}
	
	public Galleta fabricar_galleta()
	{
		//Método para fabricar galletas
	}
}
	

De momento no pretendo profundizar mucho con respecto a esto. En el código anterior están implementados algunos de los conceptos mencionados en este artículo. Si no comprendes bien el código, no te preocupes que a lo largo de este curso de Java iré explicando todo esto.

Muy bien, probablemente ya tienes cierta noción acerca de lo que estamos hablando y no es necesario profundizar mucho más por ahora, recuerda que si no estás entendiendo algo de lo que he hablado anteriormente en esta sección, no debes preocuparte, pues más adelante iré clarificando todo con más detalle, si tienes alguna duda o sugerencia usa la sección de comentarios que se encuentra al final de este artículo.

¡Listo! Vamos a la siguiente sección para conocer un poco acerca de algunos entornos de desarrollo para Java y tener una buena herramienta de trabajo para programar en Java.

La última actualización de este artículo fue hace 1 año