1  public class VehicleDemo
  2  {
  3     public static void process(Vehicle v, String plateNumber)
  4     {
  5        // This example shows the syntax of instanceof and casting
  6        if (v instanceof Car) 
  7        {
  8           Car c = (Car) v; // Vehicle has no setLicensePlateNumber method--must cast
  9           c.setLicensePlateNumber(plateNumber);
 10        }
 11  
 12        System.out.println(v); // calls v.toString()
 13     }
 14  
 15     public static void main(String[] args)
 16     {
 17        Vehicle aCar = new Car(); 
 18        process(aCar, "XYX123"); 
 19  
 20        Vehicle aLimo = new Car(); 
 21        aLimo.setNumberOfTires(8);
 22        process(aLimo, "W00H00");
 23  
 24        process(new Motorcycle(), "MT1729");
 25     }
 26  }