Java | Clase y Objeto | Pregunta 1

¿Predecir el resultado del siguiente programa Java?

class Test {
  int i;
} 
class Main {
   public static void main(String args[]) { 
     Test t; 
     System.out.println(t.i); 
}  

(A) 0
(B) valor de basura
(C) error del compilador
(D) error de tiempo de ejecución

Respuesta: (C)
Explicación: t es solo una referencia, el objeto al que hace referencia t no tiene asignada ninguna memoria. A diferencia de C++, en Java todos los objetos no primitivos deben asignarse explícitamente y estos objetos se asignan en el montón. El siguiente es un programa corregido.

class Test {
  int i;
} 
class Main {
   public static void main(String args[]) { 
     Test t = new Test(); 
     System.out.println(t.i); 
}  

Cuestionario de esta pregunta

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 *