¿Cómo se compila un literal de clase en código de bytes Java?

public class A {
}

public class B {
    public static void b() {
        System.out.println(A.class);
    }
}

¿Cómo es la clase literal?A.class compilado en el bytecode de B.class? ¿Es una referencia de campo? No puedo encontrar una mención de eso en la documentación de bytecode de Oracle / Sun.

Los descompiladores no tienen problemas para reconstruirlo, sea lo que sea:

java -jar decompiler.jar B.class

Recogido JAVA_TOOL_OPTIONS: '-Dfile.encoding = UTF8'

// // Descompilado por Procyon v0.5.30 //

public class B
{
    public static void b() {
        System.out.println(A.class); <<<
    }
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta