2
respuestas

¿Por qué motivo aparece PrintStream.class y para qué es de ayuda?

¡Hola, muy buen día!

Al momento de dar clic en Debug, correr el debugeo desde el breakpoint y presionar Step in, se crea de manera automatica PrintStream.class cuando la línea de código no tiene llamada a un método Noto que Step in ayuda cuando se ingresa a un método (y no aparece PrintStream.class) , por otro lado, Step over cuando quiero ejecutar la siguiente linea. Esto me hace pensar: ¿Es Step in lo que hace que se genere PrintStream.class?, ¿Por qué se genera esa clase?, ¿Para qué casos de ejemplo podría serme de ayuda validar tan a detalle ese extenso código?

... Intente investigar un poquito, pero no encontre mucha información sobre como evitar la creación de esa clase (por lo que ya no sé sí eso es posible). ¡Muchas gracias por su tiempo y su ayuda, Saluditos!

2 respuestas

Buenas noches compañera, PrintStream es una clase incorporada en Java que proporciona métodos para imprimir datos en diferentes formatos a una secuencia de salida, como la consola o un archivo. No es generada automáticamente por el proceso de debug. La aparición de PrintStream.class puede deberse a que la línea de código actual hace uso de un objeto de tipo PrintStream o a que se está utilizando un método de esa clase. Espero poder ayudarte de lo contrario si pudieras compartir tu código para revisarlo con gusto lo puedo revisar

Hola Jose Juan, como estas?

Gracias por tu respuesta, me hizo mucho sentido que mencionaras que el momento donde se genera la clase tiene que ver conque la instrucción llama a un Print. Lo que me llama la atención es que es justamente ".class" y no ".java" (que vuelve a tener sentido con lo que mencionas). Entiendo que la aparicion de esa clase se debe a un llamado por Print, sin embargo, es la primera vez que me sucede y ha sido al debugear, entiendo que no le pertenece al proceso de debug, pero no encuentro el motivo por el que existe ese ".class", en qué otros escenarios aparece y cual es su "misión". El profesor lo menciono en clase, pero al explorar en esa clase veo que trae varios ciclos y otras cosas. En cuanto al codigo completo, te lo debo, ya que cambie bastantes cositas despues de terminar la clase 4 con las excepciones y errores. Sin embargo, es algo así, donde el breakpoint estaba en System.out.println("Inicio del main");

... muchas gracias por tu ayuda y tiempo, Saludos!

public static void main(String[] args)  {
        System.out.println("Inicio del main");       
            metodo1();			
        System.out.println("Fin main");        
    }