Listing 6. Source code for Prob05.
/*File Prob05 Copyright 2001, R.G.Baldwin 
Rev 12/16/08 
*********************************************************/ 
import java.util.*; 
 
class Prob05{ 
  public static void main(String[] args){ 
 
    Random generator = new Random(new Date().getTime()); 
    int randomNumber = (byte)generator.nextInt(); 
 
    Object[] objRef = {new Prob05MyClassA(randomNumber)}; 
 
    System.out.println( 
          new Prob05MyClassB().getDataFromObj(objRef[0])); 
 
    System.out.println(randomNumber); 
 
  }//end main 
}//end class Prob05 
//======================================================// 
 
class Prob05MyClassA extends Prob05{ 
  private int data; 
 
  public Prob05MyClassA(int inData){ 
    System.out.println("Prob05"); 
    System.out.println("Dick"); 
    data = inData; 
  }//end constructor 
 
  public int getData(){ 
    return data; 
  }//end getData() 
 
}//end class Prob05MyClassA 
//======================================================// 
 
class Prob05MyClassB{ 
 
  Prob05MyClassB(){ 
    System.out.println("Baldwin"); 
  }//end constructor 
 
  public int getDataFromObj(Object refToObj){ 
    return ((Prob05MyClassA)refToObj).getData(); 
  }//end getDataFromObj() 
 
}//end class Prob05MyClassB