¿Qué sucede si escribo vacío público estático en lugar de vacío público estático en Java? ¿Eso hará alguna diferencia?

La pregunta habría obtenido las opiniones de varios expertos si hubiera preguntado algo como ” ¿Por qué funciona static public main static public ? “. Espero que entiendas lo que estoy tratando de implicar aquí. Intenta manejar el problema por tu cuenta primero.

Ahora, de vuelta a la tarea en cuestión. Los siguientes códigos se comportan de manera idéntica:

  clase pública MainTest {
	 static public void main (String [] args) {
		 System.out.println ("¡Hola, mundo!");
	 }
 }

Y

  clase pública MainTest {
	 public static void main (String [] args) {
		 System.out.println ("¡Hola, mundo!");
	 }
 }

Y ahora viene la parte del por qué . ¿Por qué podemos hacerlo?

Porque podemos. La especificación de Java está de acuerdo, y esta mirada más cercana al “¡Hola Mundo!” la aplicación también está de acuerdo.

Los nombres de los métodos son los últimos, el tipo de retorno es el penúltimo y luego es su elección. No afectará el código en ningún grado, pero generalmente se considera una convención colocar el modificador de acceso al frente de la definición del método. Eche un vistazo aquí para obtener más información sobre el asunto.

Espero que haya ayudado.

A2A. Sí, puede escribir vacío público estático en lugar de vacío público estático. Considere el siguiente ejemplo,

  paquete com.ashok.sample;

 Muestra de clase pública {
	 public static void main (String [] args) {
		 System.out.println ("Bienvenido a Waytoeasylearn.com");
	 }
 }

 paquete com.ashok.sample;

 Muestra de clase pública {
	 static public void main (String [] args) {
		 System.out.println ("Bienvenido a Waytoeasylearn.com");
	 }
 }

Por encima de dos ejemplos que funcionan bien. Ambos programas de muestra dan la misma salida, es decir,

  Bienvenido a Waytoeasylearn.com

Espero que esto te ayude

Gracias,

Manera de aprender fácilmente

Funcionará absolutamente bien.

Sin haber declarado el método main static , su programa se compilará correctamente pero no se ejecutará e informará un error en tiempo de ejecución. Esto es necesario ya que el intérprete de Java llama a main antes de que se cree ningún objeto. La palabra clave void simplemente le dice al compilador que main no devuelve un valor.

Pero ahora entendamos lo que sucederá cuando en este código ::

Solución de clase pública

{

public static void main (Cadena [] argv)

{System.out.println (“Hola mundo”);

}

}

1. ¿Qué pasa si el método principal se declara privado?

R: El programa se compila correctamente, pero en tiempo de ejecución dará “Método principal no público”. Para ejecutar el programa, el método principal debe ser público.

2. ¿Qué pasa si el modificador estático se elimina de la firma del método principal?

A: compila el programa. Pero en tiempo de ejecución arroja un error “NoSuchMethodError”.

3.P: ¿Qué sucede si escribo vacío público estático en lugar de vacío público estático?

A: El programa se compila y se ejecuta correctamente.

Para más

En los lenguajes de programación Java / C #, ¿qué significa cada término en “public static void main (String [] args)”?

Espero que te ayude.

, puede declarar modificadores de acceso en cualquier orden.

La firma del método principal se especifica en la sección 12.1.4 de las especificaciones del lenguaje Java y establece claramente:

El método main debe declararse público, estático y nulo. Debe especificar un parámetro formal (§8.4.1) cuyo tipo declarado es una matriz de String.

  • debe ser público, de lo contrario no sería posible llamarlo
  • debe ser estático ya que no tiene forma de instanciar un objeto antes de llamarlo
  • la lista de argumentos de String está ahí para permitir pasar parámetros al ejecutar un programa Java desde la línea de comandos. Hubiera sido posible definirlo sin argumentos, pero es más práctico así (y similar a otros idiomas)
  • el tipo de retorno es nulo ya que no tiene sentido tener nada más: un programa Java puede terminar antes de llegar al final del método principal (por ejemplo, llamando a System.exit ())

La firma del método puede ser:
public static void main (String [] args)
Public static void main (String … args)

Este tipo de preguntas se hacen en una entrevista para confundir al candidato.

Si escribe static public void main en lugar de public static void main, entonces no habrá diferencia. El programa se compila correctamente y se ejecuta. Pero si cambia la secuencia de main, le dará un error de compilación.

Algunas veces el entrevistador también pregunta: ¿Explica el significado de cada palabra en public static void main? También es importante.

Público : es un Especificador de acceso , que define quién puede acceder a este Método. Público significa que este método será accesible por cualquier clase (si otras clases pueden acceder a esta clase).

Estática: es una palabra clave que identifica la cosa relacionada con la clase. Esto significa que el Método o variable dado no está relacionado con la instancia, sino con la Clase. Se puede acceder sin crear la instancia de una Clase.

Void: se usa para definir el tipo de retorno del método. Define lo que el método puede devolver. Anulado significa que el Método no devolverá ningún valor.

main: es el nombre del Método . JVM busca este nombre de método como punto de partida para una aplicación con una firma particular solamente.

String [] args: es el parámetro del método principal. puedes poner cualquier nombre en lugar de args.

Tanto el vacío público estático como el vacío público estático son idénticos. El motivo de preocupación es seguir el siguiente patrón para la declaración del método en Java:

palabras clave returnType methodName (parámetros);

Aquí las palabras clave pueden ser cualquiera: público, estático, final, etc. y pueden ser de cualquier orden.

Espero que haya ayudado!

Puede, pero probablemente no lo quieras de esa manera.

Hace una profunda diferencia. Si omite la palabra clave “estática”, el compilador no encontrará un método principal para ingresar. En consecuencia, suponiendo que no exista otro método de “vacío público estático principal” en el resto de su programa, su código no se ejecutará en absoluto.

Sí, ¿puedo escribir public static void main como static public void main?
Programa:
import java.io. *;
clase pública A {
vacío público estático main (String args [])
{
System.out.println (“bienvenido”);

}
}
salida:

F: \> javac A.java

F: \> java A
bienvenidos

F: \>

Sí puede.
(No es que entienda por qué alguien querría mientras el resto del mundo lo escriba de otra manera).

No va a funcionar Tienes que seguir la sintaxis de Java.

Sí, está perfectamente bien. Puedes declarar modificadores de acceso en cualquier orden.

Sí, los especificadores de acceso pueden declararse en cualquier orden siempre que comprenda la necesidad de cada uno.

No hay diferencia, siempre y cuando todas las palabras clave estén ahí.

  • Está absolutamente bien … el programa vl compila y ejecuta. Bcuz JVM no se refiere a una secuencia de palabras clave en la medida en que están presentes en la declaración principal.

More Interesting

¿Se puede evitar quedar atrapado con software sin licencia usando Linux?

¿Cuál tiene más reputación entre los empleadores para un trabajo? Licenciado en Informática (Desarrollo de Software) de RMIT o Swinburne University of Technology?

¿Todas las aplicaciones contienen una sola línea mágica de código sin la cual la aplicación sería imposible de implementar correctamente?

¿Es la Maestría en Ingeniería de Software de Carnegie Mellon Silicon Valley un título respetado?

¿Cuáles son las herramientas o el software disponibles para colaborar con los desarrolladores en tiempo real?

¿Cuáles son las opciones de back-end (como Parse, FireBase, PubNub, Layer, etc.) para el desarrollo móvil y las ventajas de cada una?

¿Cuáles son las mejores opciones de computadora portátil para un estudiante de ingeniería de software que es un fotógrafo apasionado y un jugador casual?

¿Hay un buen libro de introducción o guía sobre cómo programar simulaciones (económicas, comerciales, físicas, etc.)?

¿Cuáles son las herramientas necesarias para construir un software como la información del empleado?

¿Es beneficiosa la programación de pares?

Cómo convertirse en un programador más lento

¿Qué línea de código te describe mejor?

¿Cuáles son algunas sugerencias y temas que debo considerar si voy a dar una charla sobre tecnología y desarrollo de software a un grupo local de no técnicos en mi comunidad local?

Como desarrollador de software femenino, ¿qué te interesó en la codificación y cómo empezaste?

¿Qué software debe tener cada programador?