De donde invoca el metodo toString ?
public class Semaforo {
public enum ColorSemaforo {
Verde, Ambar, Rojo;
}
private ColorSemaforo color;
public Semaforo(){
}
public ColorSemaforo getColor() {
return color;
}
public void setColor(ColorSemaforo color) {
this.color = color;
}
public String toString(){
String s="Semaforo:" +color;
return s;
}
public void cambiarColor(){
if(color==ColorSemaforo.Verde){
color=ColorSemaforo.Ambar;
}
else{
if(color==ColorSemaforo.Ambar){
color=ColorSemaforo.Rojo;
}
else{
color=ColorSemaforo.Verde;
}
}
}
public static void main(String[]args) throws InterruptedException {
Semaforo misemaforo=new Semaforo();
misemaforo.setColor(ColorSemaforo.Verde);
int c=0;
while(c<=100){
System.out.println(misemaforo.toString());
misemaforo.cambiarColor();
Thread.sleep(2000);
c++;
}
}
}