logo Practice-It logo

Paper

Author: Stuart Reges (on 2014/02/13)

Assuming that the following classes have been defined:

        public class Clip extends Paper {
            public void method2() {
                System.out.println("Clip 2");
                super.method2();
            }
        }

        public class Paper {
            public void method2() {
                System.out.println("Paper 2");
            }

            public void method3() {
                System.out.println("Paper 3");
                method2();
            }
        }

        public class Stapler extends Clip {
            public void method1() {
                System.out.println("Stapler 1");
            }

            public void method2() {
                System.out.println("Stapler 2");
            }
        }

        public class Pen extends Paper {
            public void method1() {
                System.out.println("Pen 1");
            }

            public void method2() {
                System.out.println("Pen 2");
            }
        }

And assuming the following variables have been defined:

        Paper var1 = new Pen();
        Stapler var2 = new Stapler();
        Paper var3 = new Stapler();
        Paper var4 = new Paper();
        Object var5 = new Stapler();
        Paper var6 = new Clip();

In the table below, indicate in the right-hand column the output produced by the statement in the left-hand column. If the statement produces more than one line of output, indicate the line breaks with slashes as in "a/b/c" to indicate three lines of output with "a" followed by "b" followed by "c". If the statement causes an error, fill in the right-hand column with either the phrase "compiler error" or "runtime error" to indicate when the error would be detected.

var1.method2();
var2.method2();
var3.method2();
var4.method2();
var5.method2();
var6.method2();
var1.method1();
var2.method1();
var3.method1();
var1.method3();
var2.method3();
var3.method3();
var4.method3();
((Pen)var1).method1();
((Stapler)var3).method1();
((Clip)var3).method3();
((Clip)var5).method1();
((Pen)var5).method1();
((Clip)var6).method2();
((Stapler)var6).method3();

You must log in before you can solve this problem.


Log In

If you do not understand how to solve a problem or why your solution doesn't work, please contact your TA or instructor.
If something seems wrong with the site (errors, slow performance, incorrect problems/tests, etc.), please

Is there a problem? Contact a site administrator.