Java type promotion WTF

Sufficiently advanced Java is indistinguishable from satire.

Consider the following program:

Object a = true ? 'a' : new Float(1);
System.out.println(a);
System.out.println(a.getClass());

This is what it outputs:

97.0
class java.lang.Float

Because of course it does.