Consider the following class declarations.
public class Person
{
public void laugh()
{
System.out.print("Hahaha");
}
}
public class EvilPerson extends Person
{
public void laugh()
{
System.out.print("Mwahahaha");
}
}
public class Henchman extends EvilPerson
{
// No methods defined
}
The following code segment appears in a method in another class.
alice.laugh();
Under which of the following conditions will the code segment print "Mwahahaha" ?
I. When alice has been declared as type Person
II. When alice has been declared as type EvilPerson
III. When alice has been declared as type Henchman
A. II only
B. I and II only
C. I and III only
D. II and III only
E. I, II, and III