Java >> Tutorial de Java >  >> Tag >> static

Java – Programa de entrevistas sobre método estático

En este artículo, veremos un programa de muestra que involucra un método estático

P) ¿Cuál será el resultado del siguiente programa?

package in.bench.resources.interview;

public class DemoStatic {

	// sample static method
	private static void staticMethod() {
		System.out.println("This is static-method with"
				+ " name staticMethod();");
	}

	// main() - entry point to JVM execution
	public static void main(String[] args) {

		DemoStatic ds = null;
		ds.staticMethod();
	}
}

Salida:

This is static-method with name staticMethod();

Explicación:

  • Estamos invocando el método estático con variable de referencia que se asigna a null
  • Ni siquiera creó un objeto usando nuevo operador en la línea 14
  • Entonces, uno podría pensar que, durante la ejecución del programa, lanzará NullPointerException
  • Pero el programa muestra la salida correcta sin errores durante el tiempo de ejecución/ejecución
  • Motivo: porque para invocar el método estático, no requerimos un objeto instanciado real
  • En su lugar, se puede invocar el método estático con un nombre de clase como .
  • A veces, la variable de referencia no inicializada es suficiente para llamar/invocar el método estático, como se muestra en el programa anterior
  • En realidad, al llamar/invocar el método estático con variable de referencia, el compilador advierte con el mensaje "Se debe acceder al método estático del tipo DemoStatic de forma estática “, como se muestra en la siguiente captura de pantalla
  • La forma correcta de invocar el método estático es,
    1. <Nombre de clase>.<método estático> (más preferido )
    2. <variable de referencia>.<método estático>

Comparta con nosotros si se ha enfrentado a alguna pregunta/programa de entrevista complicado durante la entrevista de Java. Publicaremos junto con la solución.


Etiqueta Java