println() がこれを行うことに気付きましたが、printf() で動作させることができません。
次のスニペットでは、最初の 2 つの println で RED と BLUE が返され、次に printf がクラッシュします。
class Jim {
public enum Colours {BLUE, RED}
static Colours xx = Colours.RED;
public static void main(String[] args) {
Colours fred = Colours.BLUE;
System.out.println(xx);
System.out.println(fred);
System.out.printf("%d, %d\n", fred, xx);
}