Nuestra primera aplicación Java

Esqueleto de una aplicación

Una aplicación Java es un programa autónomo que se puede ejecutar en cualquier plataforma que disponga de una máquina virtual Java.Todo tipo de aplicación se puede desarrollar en Java: interfaz gráfica, acceso a las bases de datos, aplicaciones cliente/servidor, multihilo…

Una aplicación se compone de, al menos, un fichero .class y él mismo debe contener como mínimo el punto de entrada de la aplicación, el método main().

Ejemplo de la estructura mínima de una aplicación

public class MiAplicación {
	public static void main(String argumentos[]) {
		/* cuerpo del método principal */
	}
}

 

Si la aplicación es importante, se pueden crear tantas clases como sean necesarias. Las clases que no contengan el método main() se llaman clases auxiliares.

El método main() es el primer elemento llamado por la máquina virtual Java al lanzar la aplicación.

El cuerpo de este método debe contener las instrucciones necesarias para el arranque de la aplicación, es decir, la creación de instancias de clase, la inicialización de variables y la llamada a métodos.

De manera ideal, el método main() puede contener una única instrucción.

La declaración del método main() siempre se hace según la sintaxis siguiente:

public static void main(String <identificador>[ ] ) {
	...
}

public

Modificador de acceso utilizado para hacer que el método sea accesible al conjunto de las otras clases y objetos de la aplicación, y también para que el intérprete Java pueda acceder a ello desde el exterior al ejecutar la aplicación.

static

Modificador de acceso utilizado para definir el método main() como método de clase. La máquina virtual Java puede por lo tanto llamar este método sin tener que crear una instancia de la clase en la cual está definido.

void

Palabra clave utilizada para indicar que el método es un procedimiento que no devuelve valor.

main

Identificador del método.

String <identificador>[ ]

Parámetro del método, es un vector de cadenas de caracteres. Este parámetro se utiliza para pasar argumentos en línea de comando al ejecutar la aplicación. En la mayoría de los programas, el nombre utilizado para <identificador> es argumentos o args, para indicar que la variable contiene argumentos para la aplicación.

Argumentos en línea de comando

a. Principios y utilización

Al ser una aplicación Java un programa autónomo, puede ser interesante proporcionarle parámetros u opciones que van a determinar el comportamiento o la configuración del programa en el momento de su ejecución.Los argumentos en línea de comando se almacenan en un vector de cadenas de caracteres. Si quiere utilizar estos argumentos con otro formato, debe efectuar una conversión de tipo, del tipo String hacía el tipo deseado durante el procesamiento del argumento.

¿En qué casos se deben utilizar los argumentos en línea de comandos?

Los argumentos en línea de comandos se deben utilizar al arrancar una aplicación en cuanto uno o varios datos utilizados en la inicialización de nuestro programa pueden adoptar valores variables según el entorno. Por ejemplo:

  • nombre del puerto de comunicación utilizado en el caso de una comunicación con un periférico físico.
  • dirección IP de una máquina en la red en el caso de una aplicación cliente/servidor.
  • nombre del usuario y contraseña en el caso de una conexión a una base de datos con gestión de los permisos de acceso.

Por ejemplo, en el caso de una aplicación que accede a una base de datos, se suele deber proporcionar un nombre de usuario y una contraseña para abrir una sesión de acceso a la base. Diferentes usuarios pueden acceder a la base de datos, pero con permisos diferentes. Por lo tanto pueden existir varias sesiones diferentes. No es factible crear una versión de la aplicación para cada usuario.

Además, estas informaciones son susceptibles de ser modificadas. Así que no parece juicioso integrarlas en su código, porque cualquier cambio le obligaría a modificar su código fuente y a recompilarlo y a tener una versión para cada usuario.

La solución a este problema reside en los argumentos en línea de comando.

Sólo es necesario utilizar en su código el vector de argumentos del método main que contiene las variables (nombre y contraseña) de su aplicación.

A continuación y en función del usuario del programa, hay que acompañar el nombre de la clase principal, y en el momento del lanzamiento del programa por la instrucción java, con el valor de los argumentos en línea de comandos de la aplicación.

b. Paso de argumentos a una aplicación Java en tiempo de ejecución

El paso de argumentos a una aplicación Java se hace al lanzar la aplicación mediante la línea de comando. El ejemplo siguiente de programa muestra como utilizar el paso de argumentos en línea de comandos en una aplicación Java.

/* Declaración de la clase principal de la aplicación */  
public class MiClase 
{ 
	/* Declaración del método de punto de entrada de la aplicación*/ 
	public static void main(String args[]) 
	{ 
 
		/* Visualización de los argumentos de la línea de comando */ 
 
		for (int i = 0 ; i < args.length; i++) 
 
		System.out.printIn("Argumento " +i + " = " + args[i]) ; 
 
	} 
 
	/* Conversión de dos argumentos de la línea de comando de 
	String hacia int, luego suma de los valores enteros, y 
	visualización del resultado */ 
 
	int suma; 
	suma=(Integer.parselnt(args[3]))+(Integer.parselnt(args[4])); 
	System.out.println("Argumento 3 + Argumento 4 = " + suma); 
}

 

Después de la compilación, el programa se ejecuta con la línea de comando siguiente:

java MiClase Hola Mundo "Hola Mundo" 2 5

La ejecución del programa muestra la información siguiente:

Argumento 0 = Hola
Argumento 1 = Mundo
Argumento 2 = Hola Mundo
Argumento 3 = 2
Argumento 4 = 5
Argumento 3 + Argumento 4 = 7
 

Taller de Desarrollo con Javascript

Regístrate en nuestra plataforma en linea para tener acceso completo y gratuito del taller

Registrarme

Taller de desarrollo de Pokedex con Android Studio

Regístrate en nuestra plataforma en linea para tener acceso completo y gratuito del taller

Registrarme