Hemos visto cientos de veces estas líneas de código, hoy vamos a hablar de ellas.
package com.example;
public class Prueba {
public static void main(String[] args) {
System.out.println("Esto es una prueba!");
}
}
El método main en Java es el más importante en nuestro programa, ya que es el punto de entrada y salida de nuestra aplicación, tiene como tarea principal dirigir las llamadas a otras funciones y métodos en java, en esta porción de código se inicializa y finaliza el control de un programa.
Por eso main debe ser public y static y debe declararse dentro de la clase que le da el nombre a nuestra aplicación, además es necesario que vaya acompañado del modificador public y las palabras reservadas en java static y void.
Un método public indica disponibilidad global del método desde cualquier punto del programa, es un modificador de acceso, determina desde dónde y quién puede acceder a él.
Un método definido como static se puede ejecutar sin instanciar ninguna clase.
Al ser main lo primero que se ejecuta en un programa, es lógico que no tenga un objeto para instanciar, por eso debe ser static, también es lógico y necesario que pueda llamarse desde cualquier parte de nuestro código, por lo tanto debe ser public y a la vez al ser la primera sentencia que se ejecuta, no habrá valor para devolver y por eso es void.
El main tiene algunas particularidades como el hecho de que siempre recibe argumentos del tipo String y de ningún otro, si le pasamos un int, lo convertirá a un String.
¿Cómo se consigue esto?, utilizando el método valueOf() que convierte los datos recibidos desde su formato original a un string, empleando la sobrecarga de métodos.
Main al ser un método estático, también puede ser llamado desde otro método y no necesitamos crear un objeto para llamarlo, podemos llamarlo usando el nombre de la clase.
Cuando es llamado desde otro método, main crea un array con los parámetros y luego lo podemos recorrer y mostrar el contenido por medio de un bucle for, como se muestra en el siguiente ejemplo:
package com.example;
public class llamada {
public static void main(String[] args) {// Este es el método que llama al otro main
//aqui abajo le pasamos los parámetros
String[] losparametrosdelotro ={
"Yo me llamo", "Pepito", "hice la suma de dos números, 5 y 15, cuyo resultado es: ", String.valueOf(15+5)};
Main.main(losparametrosdelotro);//en esta linea se llama al metodo main original
}
}
package com.example;//En este método, que es el original, recorremos el array y lo mostramos por pantalla
public class Main {
public static void main(String[] args) {
for (int i = 0; i< args.length; i++)
System.out.println(args[i]);
}
}
La salida de este proceso es la siguiente:
yo me llamo
Pepito
hice la suma de dos números, 5 y 15, cuyo resultado es:
20
El método main es bastante estricto, hay cosas que no podemos cambiar.
SIEMPRE
QUE PERMITE
System.out.println() es la sentencia más utilizada para generar una salida de información por pantalla, está formada por la clase System + el método out + el método println.
La clase System, es una clase que pertenece al paquete java.lang y contiene varios métodos de entrada y salida de datos por pantalla y de salida de error, que nos permite trabajar con los canales de entrada/salida de nuestro dispositivo.
Proporciona un stream que es una especie de canal por donde fluyen los datos tanto de entrada a través del teclado, como de salida a través de la pantalla u otro dispositivo, es un enlace lógico que utiliza el programador.
Esta clase posee tres métodos estáticos:
Se utiliza junto con la clase Scanner para ingresar datos por teclado o desde un archivo.
Ej: Scanner entrada=new Scanner(System.in);
Se utiliza junto a la función print para la salida de información por pantalla.
Ej: System.out.println(“Lo que queremos mostrar”);
Su uso se basa en mostrar por pantalla si hubo un error, también se utiliza junto a la función print.
Ej: System.err.println("Mensaje de Error "+e); e representa el error
Con el método println el mensaje se muestra en pantalla y luego el cursor queda en el renglón siguiente.
En el caso del método print se muestra el mensaje y el cursor queda al final de la línea.