in

[2021] Comprensión del vacío estático público principal (String[] argumentos) en Java {DH}

gfg 200x200 min

[

línea[] argumentos: Tiendas Java argumentos de línea de comando y es una matriz de tipo java.lang.String Clase. Aquí está el nombre de la matriz de cadenas argumentos pero no está arreglado y el usuario puede usar cualquier nombre en su lugar.

class GeeksforGeeks {

    

    

    public static void main(String[] args)

    {

        for (String elem : args)

            System.out.println(elem);

    }

}

1
2
3

Además de la firma principal mencionada anteriormente, puede utilizar public static void principal (String args[]) o public static void main(String…args) para llamar a la función principal en java. El método principal se invoca cuando su parámetro formal coincide con el de una matriz de cadenas.

¿Puede el método principal ser int? ¿Pero porque?

class GeeksforGeeks {

     

    public static int main(String[] args) {

 

        System.out.println("GeeksforGeeks");

    }

}

Java no devuelve implícitamente un int incluso si declaramos que el tipo de retorno de main es int.
Obtenemos un error en tiempo de compilación

prg1.java:6: error: falta declaración de retorno
}
^
1 error

class GeeksforGeeks {

     

    public static int main(String[] args) {

 

        System.out.println("GeeksforGeeks");

        return 0;

    }

}

Bueno, incluso si nosotros mismos devolvemos explícitamente 0 o un número entero, desde int main.
Obtenemos un error de tiempo de ejecución.

Error: El método principal debe devolver un valor de tipo void en la clase GeeksforGeeks, por favor
Definir el método principal como:
public static void main(String[] argumentos)

Explicación –
la Programas en C y C++ que los retornos son en lo principal procesos del sistema operativo. la valor entero devuelto por main en C y C++ código de salida o estado de salida. El código de salida del programa C o C++ ilustra por qué finalizó el programa. El código de salida 0 significa terminación exitosa. Sin embargo, un estado de salida distinto de cero indica un error. Por ejemplo, el código de salida 1 indica varios errores, p. B. «dividir por cero».

El proceso principal de un proceso secundario sigue esperando el estado de salida del proceso secundario. Y después de obtener el estado de salida secundario, limpia el proceso secundario de la tabla de procesos y libera los recursos asignados. Debido a esto, es obligatorio que los programas C y C++ (que son procesos del sistema operativo) pasen su estado de salida explícita o implícitamente desde main.

Sin embargo, el programa Java se ejecuta como ‘Amenaza principal’ en la JVM. El programa Java ni siquiera es directamente un proceso del sistema operativo. No hay interacción directa entre el programa Java y el sistema operativo. No hay asignación directa de recursos al programa Java directamente, o el programa Java no ocupa ningún espacio en la tabla de procesos. Entonces, ¿a quién debería devolverle el estado de salida? Debido a esto, el método principal de Java está diseñado para no devolver el estado int ni salir.

Pero JVM es un proceso de un sistema operativo y JVM se puede terminar con un cierto estado de salida. Usando java.lang.Runtime.exit (estado int) o System.exit (estado int)

¡Atención lectores! No dejes de aprender ahora. Consigue todo lo que necesitas Fundación Java y conceptos de colección con el Curso sobre fundamentos de Java y colecciones de Java a un precio asequible para los estudiantes y prepararse para la industria. Para completar tu preparación desde aprender un idioma hasta DS Algo y mucho más, mira Curso completo de preparación para la entrevista de trabajo.


[2021] Comprensión del vacío estático público principal (String[] argumentos) en Java {DH}

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

apple touch icon@2

[2021] html – mostrar/ocultar imagen con JavaScript {DH}

1618083648 Friendship lamps uncommon goods 1 650x430

[2021] ¿Qué son las lámparas de la amistad y por qué tú y tu mejor amigo necesitan un juego lo antes posible? {HD}