Requisito previo: palabra clave estática en Java
Pregunta 1. ¿Cuál es el resultado de esta pregunta?
class Test1 { public static void main(String[] args) { int x = 20; System.out.println(x); } static { int x = 10; System.out.print(x + " "); } }
Opción
A) 10 20
B) 20 10
C) 10 10
D) 20 20
Output: A
Explicación: el bloque estático se ejecuta antes que el método principal. Si declaramos un bloque estático en la clase Java, se ejecuta cuando se carga la clase.
Pregunta 2. ¿Cuál es el resultado de esta pregunta?
class Test1 { int x = 10; public static void main(String[] args) { System.out.println(x); } static { System.out.print(x + " "); } }
Opción
A) 10 10
B) Error
C) Excepción
D) ninguna
Output: B
Explicación: si estamos tratando de imprimir la variable de instancia dentro del bloque estático o el método estático sin crear una instancia de clase, dará el error: no se puede hacer referencia a la variable no estática x desde un contexto estático.
Pregunta 3. ¿Cuál es el resultado de esta pregunta?
class Test1 { int x = 10; public static void main(String[] args) { Test1 t1 = new Test1(); System.out.println(t1.x); } static { int x = 20; System.out.print(x + " "); } }
Opción
A) 10 20
B) 20 10
C) 10 10
D) Error
Output: B
Explicación: podemos imprimir la variable de instancia dentro del método estático después de crear la referencia de clase.
Pregunta 4. ¿Cuál es el resultado de esta pregunta?
class Test1 { int x = 10; public static void main(String[] args) { System.out.println(Test1.x); } static { int x = 20; System.out.print(x + " "); } }
Opción
A)10 10
B) 20 20
C) 20 10
D) Error
Output: D
Explicación: no podemos acceder a la variable de instancia con el nombre de clase. de lo contrario, dará el error: no se puede hacer referencia a la variable no estática x desde un contexto estático
Pregunta 5. ¿Cuál es el resultado de esta pregunta?
class Test1 { static int x = 10; public static void main(String[] args) { Test1 t1 = new Test1(); Test1 t2 = new Test1(); t1.x = 20; System.out.print(t1.x + " "); System.out.println(t2.x); } }
Opción
A) 10 10
B) 20 20
C) 10 20
D) 20 10
Output: B
Explicación: la variable estática es una variable de nivel de clase. si actualizamos cualquier referencia, automáticamente se cambiarán todos los valores de referencia señalados.
Este artículo es una contribución de Shivakant Jaiswal . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA