What will happen when you compile and run the following code?
class Base {}
class Sub extends Base {}
public class X
{
public static void main(final String[] args)
{
Base b = new Sub();
Sub s = b;
System.out.println(s.equals(b) ? "equals" : "not equal");
}
}
A) Error: "Explicit cast needed."
B) Error: "Invalid operator '?'"
C) Output: true
D) Output: not equals
E) Output: equals