go to previous page   go to home page   go to next page highlighting

Answer:

No.

This line:

System.out.println( inventory[1] );

executes the toString() method for a Food object. But this line:

System.out.println( inventory[2] );

executes the toString() method for a Book object.


Interface as a Type

public class Store
{
  public static void main ( String[] args )
  {
    Taxable item1 = new Book ( "Emma", 24.95, "Austen" );
    Taxable item2 = new Toy  ( "Leggos", 54.45, 8 );

    System.out.println( "Tax on item 1 "+ item1.calculateTax() );
    System.out.println( "Tax on item 2 "+ item2.calculateTax() );

  }
}

An interface can be used as a data type for a reference variable. Since Toy and Book implement Taxable, they can both be used with a reference variable of type Taxable:

The Taxable interface tells the compilder that all Taxable objects will have a calculateTax() method, so that method can be used with these variables.


QUESTION 20:

Would the following work?

System.out.println( item1.toString() );
System.out.println( item2.toString() );

go to previous page   go to home page   go to next page