Question: POLYMORPHISM Chapter 9 Inheritance and Interfaces (javaJ 2. Assuming the following classes have been defined: public class Harry { public void method1() { System.out.println(harry 1);
POLYMORPHISM Chapter 9 Inheritance and Interfaces (javaJ
2. Assuming the following classes have been defined:
public class Harry {
public void method1() {
System.out.println("harry 1");
}
public void method2() {
method1();
System.out.println("harry 2");
}
}
public class Larry extends Harry {
public void method1() {
System.out.println("larry 1");
super.method1();
}
}
public class Mary extends Larry {
public void method2() {
System.out.println("mary 2");
}
public void method3() {
super.method1();
System.out.println("mary 3");
}
}
public class Jerry extends Mary {
public void method2() {
super.method2();
System.out.println("jerry 2");
}
}
And that the following variables have been defined:
Harry var1 = new Harry();
Harry var2 = new Larry();
Larry var3 = new Jerry();
Mary var4 = new Mary();
Mary var5 = new Jerry();
Object var6 = new Larry();
What is the output produced by each statement below? If the statement produces more than one line of output, indicate the line breaks with slashes as in "a/b/c". If the statement causes an error, write either "compiler error" or "runtime error" as appropriate and explain the reason to have an error in a comment line. Comment out any statements that cause a compile or runtime error so that you can run the whole program and include that corrected program in your response as well please.
Statement:
var1.method1();
var2.method1();
var3.method1();
var4.method1();
var5.method1();
var6.method1();
var1.method2();
var2.method2();
var3.method2();
var4.method2();
var5.method2();
var6.method2();
var3.method3();
var5.method3();
((Larry)var1).method1();
((Mary)var2).method2();
((Jerry)var5).method1();
((Mary)var3).method3();
((Jerry)var4).method3();
((Mary)var6).method3();
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
