// ANSWERS:
// (1) Without compiling this file, use your understanding
// of inheritance to say which of the statements in this
// file will not compile and why. Then use the compiler to
// check that your guesses were correct and comment out all
// the statements with errors in them.
// (2) For each statement that doesn't compile, comment it
// out and beside it write a brief reason why the compiler
// doesn't accept it.
// (3) NOTE: It is essential for the next question that the
// incorrect lines are commented out.
// (4) Compile and run InheritTest to see what is printed
// to the screen.
// (5) Why is the number printed out for "e.numberOfLegs"
// equal to 2 when there is no mention of ever setting the
// value for "numberOfLegs" to 2 in the Eagle class?
//
// HINT: It has something to do with "super".
//
//
// ANSWER: The call of "super" in each of the constructors
// causes the constructor of the immediate superclass to be
// called. Therefore a call to the Eagle constructor
// results in calls to the Animal constructor and the Bird
// constructor, in that order.
//
//
// (6) Add the following three lines to the main method:
// a = b;
// a.talk();
// a.fly();
// If you compile the code, one of these lines gives a
// compiler error. Which line is it and what is the reason
// for the error?
//
//
// ANSWER: The line that says "a.fly()" will not compile, because
// the reference "a" is of compile-time type "Animal" and the
// Animal class contains no such method "fly".
//
//
// (7) Remove the lines you added from question (6) and add
// the following three lines to the main method:
// b = a;
// b.talk();
// b.fly();
// If you compile the code, one of these lines gives a
// compiler error. Which line is it and what is the reason
// for the error?
//
//
// ANSWER: The line that says "b=a" will not compile,
// because the reference "a" is of compile-time type
// "Animal" and the reference "b" is of compile-time type
// "Bird". Because of the non-symmetrical nature of
// inheritance, you are not allowed to copy an Animal
// reference to a Bird reference.
//
//