Consider the following class declarations.

public class Parent
{
public void first()
{
System.out.print("P");
second();
}
public void second()
{
System.out.print("Q");
}
}
public class Child extends Parent
{
public void first()
{
super.first();
}
public void second()
{
super.second();
System.out.print("R");
}
}
public class Grandchild extends Child
{
public void first()
{
super.first();
System.out.print("S");
}
public void second()
{
super.second();
System.out.print("T");
}
}

Which of the following code segments, if located in another class, will produce the output "PQRTS" ?

A. Parent a = new Parent();
a.first();
B. Child b = new Child();
b.first();
C. Child c = new Child();
c.second();
D. Grandchild d = new Grandchild();
d.first();
E. Grandchild e = new Grandchild();
e.second();