Movie
In the example program, the class definition for VideoTape
includes a constructor, so the default constructor
was not automatically supplied.
So the constructor proposed for Movie causes a syntax error.
Let us not use it.
Here is an example program that makes use of the two classes:
class TapeStore
{
public static void main ( String args[] )
{
VideoTape item1 = new VideoTape("Microcosmos", 90 );
Movie item2 = new Movie("Jaws", 120, "Spielberg", "PG" );
item1.show();
item2.show();
}
}
(You can run this program by using NotePad and copying and pasting the class definitions from the previous pages.) When you run it, you will get the following output:
Microcosmos, 90 min. available:true Jaws, 120 min. available:true
The statement item2.show() calls the show() method
of item2.
This method was inherited without change from the class
VideoTape.
This is what it looks like:
public void show()
{
System.out.println( title + ", " + length + " min. available:" + avail );
}
It does not mention the new variables that have been added to objects
of type Movie, so nothing new is printed out.