/** * ========================================================= * Node.java: Java class for nodes in a simple polygon. * The class node extends class vector. * * Written by: Mark Austin November, 2004 * ========================================================= */ import java.lang.Math; import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class MetroStation extends Node { protected String sName; protected List onTrack; protected boolean parking; // Constructor methods .... public MetroStation( String sName, double dX, double dY ) { super( dX, dY ); this.sName = sName; onTrack = new ArrayList(); parking = false; } // Set parking node ... public void setParking( boolean parking ) { this.parking = parking; } // Assign metro station to a track .... public void add( String track ) { onTrack.add ( track ); } // Convert description of metro station to a string ... public String toString() { String s = "MetroStation(\"" + sName + "\")\n" + " Coordinates = (" + dX + "," + dY + ")\n" + " Parking = " + parking + "\n"; if ( onTrack.size() > 0 ) { s = s.concat( " Track = { " ); for (int i = 0; i < onTrack.size(); i = i + 1) s = s.concat( onTrack.get(i) + " "); s = s.concat("}\n"); } return s; } // Exercise methods in the metro station class ..... public static void main( String args[] ) { // Create "College Park" station at coordinate (80,80)... MetroStation sA = new MetroStation("College Park", 80.0, 80.0 ); sA.setParking( true ); sA.add ( "Green" ); System.out.println( sA.toString() ); // Create "Fort Totten" station at coordinate (70,70)... MetroStation sB = new MetroStation("Fort Totten", 70.0, 70.0 ); sB.setParking( true ); sB.add ( "Green" ); sB.add ( "Red" ); System.out.println( sB.toString() ); } }