This is the syntax highlighted version of Splitter.java.
/*************************************************************************
* Compilation: javac Splitter.java
* Execution: java Splitter
*
* 1-2 splitter.
*
*************************************************************************/
public class Splitter extends Circuit {
public Splitter() { super(1, 2); }
public void propagate() {
outAt(0).setSignal(inAt(0).isOn());
outAt(1).setSignal(inAt(0).isOn());
}
/////////////////////////////////////////////////////////////////////////
// test client
public static void main(String[] args) {
Circuit splitter = new Splitter();
Switch input = new Switch();
Light light0 = new Light();
Light light1 = new Light();
input.outAt(0).solderTo(splitter.inAt(0));
splitter.outAt(0).solderTo(light0.inAt(0));
splitter.outAt(1).solderTo(light1.inAt(0));
// set inputs and show
System.out.println(light0.isOn());
System.out.println(light1.isOn());
System.out.println();
input.turnOn();
System.out.println(light0.isOn());
System.out.println(light1.isOn());
System.out.println();
input.turnOff();
System.out.println(light0.isOn());
System.out.println(light1.isOn());
System.out.println();
}
}
Last updated: Mon May 24 12:02:56 EDT 2004
.
Copyright © 2004, Robert Sedgewick and Kevin Wayne.