/* * IllustrateStuffChapt7N8.java * * Created on February 12, 2004, 10:26 AM */ package UPSTruckSimple; import IO.*; import SortSearchEtc.*; // they need to download from simple examples page under review /** * * @author redmond */ public class IllustrateStuffChapt7N8 { /** Creates a new instance of IllustrateStuffChapt7N8 */ public IllustrateStuffChapt7N8() { } /** * @param args the command line arguments */ public static void main(String[] args) { // chapt 7, slide 6 - replacement UPSTruckSimple brown = null; // added initialization to get past compiler //brown.pickup(10); // crashes with NullPointerException UPSTruckSimple [] brownFleet = new UPSTruckSimple[10]; //brownFleet[0].pickup(10); // crashes with NullPointerException // slide 10 - replacement brownFleet[0] = new UPSTruckSimple(); // just to have something to work with int toPickup = 0; try { toPickup = RedmondMsgIn.readValidIntRobust("How many to pick up?",1,20); brownFleet[0].pickup(toPickup); RedmondMsgOut.display("Truck: " + brownFleet[0]); } catch (UserCancelException ex) { RedmondMsgOut.display("you refuse to answer - go away"); RedmondMsgOut.display("Exception: " + ex); // just for illustration } // chapter 8, slide 8 //Sorts.insertSort(brownFleet); // compiler error since UPSTruckSimple is not Comparable UPSTruckComparable [] brownComparableFleet = new UPSTruckComparable[10]; brownComparableFleet[0] = new UPSTruckComparable("1","Philly",20); brownComparableFleet[1] = new UPSTruckComparable("2","New York",30); brownComparableFleet[2] = new UPSTruckComparable("3","Washington",40); brownComparableFleet[3] = new UPSTruckComparable("4","Dallas",50); brownComparableFleet[4] = new UPSTruckComparable("5","Boston",60); brownComparableFleet[5] = new UPSTruckComparable("6","Orlando",20); brownComparableFleet[6] = new UPSTruckComparable("7","Chicago",30); brownComparableFleet[7] = new UPSTruckComparable("8","Cleveland",40); brownComparableFleet[8] = new UPSTruckComparable("9","Detroit",50); brownComparableFleet[9] = new UPSTruckComparable("10","Montreal",60); brownComparableFleet[0].pickup(5); brownComparableFleet[1].pickup(5); brownComparableFleet[2].pickup(5); brownComparableFleet[3].pickup(5); System.out.println("Fleet:"); for (int i = 0; i < brownComparableFleet.length; i++) { System.out.println(brownComparableFleet[i]); } Sorts.insertSort(brownComparableFleet); // sorts low to high System.out.println("Sorted (low to high):"); for (int i = 0; i < brownComparableFleet.length; i++) { System.out.println(brownComparableFleet[i]); } // slide 10 UPSTruckSimple cantClone = new UPSTruckSimple("5","Philly",20); System.out.println("cantClone: " + cantClone); UPSTruckSimple cloned = (UPSTruckSimple) cantClone.clone(); // not allowed System.exit(0); } }