What does the following Java code output?
public abstract class NumberHolder {
public abstract int getNumber();
public static void main(String[] args) {
NumberHolder nh = new NumberHolder() {
private int number = 42;
@Override
public int getNumber() { return number; }
};
System.out.println(nh.getNumber());
}
}