// This file contains excerpts from the textbook Concrete // Abstractions: An Introduction to Computer Science Using Scheme, by // Max Hailperin, Barbara Kaiser, and Karl Knight, Copyright (c) 1998 // by the authors. Full text is available for free at // http://www.gustavus.edu/+max/concrete-abstractions.html public class Chinos extends Item { private String color; private int size; private int inseam; private boolean cuffed; private boolean specifiedYet; public Chinos(){ super(3300); // let Item initialize with price $33.00 specifiedYet = false; } public void display(){ if(specifiedYet){ System.out.print(color); System.out.print(" chinos, size "); System.out.print(size); System.out.print(", "); if(cuffed){ System.out.print("cuffed"); } else{ System.out.print("hemmed"); } System.out.print(" to "); System.out.print(inseam); System.out.print(" inches; "); } else { System.out.print("Chinos; "); } super.display(); // now do displaying the Item way } public void inputSpecifics(){ System.out.println("What color?"); String[] colors = {"Charcoal", "Khaki", "Blue"}; color = CompuDuds.inputSelection(colors); System.out.print("What waist size? "); size = CompuDuds.inputIntegerInRange(30, 44); System.out.println("Hemmed or cuffed?"); System.out.println(" 1) Hemmed"); System.out.println(" 2) Cuffed"); cuffed = CompuDuds.inputIntegerInRange(1, 2) == 2; System.out.println("What inseam length? "); inseam = CompuDuds.inputIntegerInRange(29, cuffed ? 34 : 36); specifiedYet = true; } }