Salida de Programas Java | Conjunto 45 (variables estáticas y de instancia)

Requisito previo: variables estáticas y de instancia

Pregunta 1. ¿Cuál es el resultado de esta pregunta?

class Test1 {
    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: D

Explicación: la variable de instancia es una variable de nivel de objeto, lo que significa que para cada objeto se creará una copia separada de la variable de instancia.

Pregunta 2. ¿Cuál es el resultado de esta pregunta?

class Test1 {
    static int i = 1;
public static void main(String[] args)
    {
        for (int i = 1; i < 10; i++) {
            i = i + 2;
            System.out.print(i + " ");
        }
    }
}

Opción
A) 3 6 9
B) 3 6 9 …. 27
C) Error
D) ninguno

Output: A

Explicación: aquí las variables locales se imprimen después de la ejecución. Si queremos ejecutar variables estáticas, escribimos Test1.io escribimos Test1 object.i.

Pregunta 3. ¿Cuál es el resultado de esta pregunta?

class Test1 {
    static int i = 1;
public static void main(String[] args)
    {
        int i = 1;
        for (Test1.i = 1; Test1.i < 10; Test1.i++) {
            i = i + 2;
            System.out.print(i + " ");
        }
    }
}

Opción
A) 1 3 9
B) 1 2 3 … 9
C) 3 5 7 9 11 13 15 17 19
D) Ninguna

Output: C

Explicación: aquí, se declaran dos copias i diferentes de la variable, una es estática y la otra es local. Si escribimos Test1.i entonces, se ejecuta la variable estática y si escribimos solo i, entonces se ejecutan las variables locales.

Pregunta 4. ¿Cuál es el resultado de esta pregunta?

class Test1 {
    static int i = 1;
public static void main(String[] args)
    {
        static int i = 1;
        for (Test1.i = 1; Test1.i < 10; Test1.i++) {
            i = i + 2;
            System.out.print(i + " ");
        }
    }
}

Opción
A)Error
B)1 3 9
C)3 5 7 9 11 13 15 17 19
D)1 2 3 … 9

Output: A

Explicación: no podemos declarar la variable estática dentro del bloque. Si declaramos una variable estática dentro del bloque, obtendremos el error de tiempo de compilación: inicio ilegal de expresión.

Pregunta 5. ¿Cuál es el resultado de esta pregunta?

class Test1 {
public static void main(String[] args)
    {
        static int arr1[] = { 11, 22, 33 };
        static int arr2[] = { 11, 22, 33, 44, 55 };
        static int ptr[];
        ptr = arr1;
        arr1 = arr2;
        arr2 = ptr;
        System.out.print(arr1.length + " ");
        System.out.println(arr2.length);
    }
}

Opción
A)Error
B)5 5
C)5 3
D)3 5

Output: A

Explicación: aquí estamos tratando de declarar la array como tipo estático, pero no podemos declarar la array local como tipo estático. Si intentamos declarar la variable local como estática, obtendremos un error: inicio de expresión ilegal.

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *