
import java.util.logging.Level;
import java.util.logging.Logger;

public class ContadorHilo extends Thread {

    Contador contador = null;

    public ContadorHilo(Contador unContador){
        this.contador = unContador;
    }

    @Override
    public void run() {
        for(int i=0; i<10; i++){
            try {
                sleep(100);
            } catch (InterruptedException ex) {
                Logger.getLogger(ContadorHilo.class.getName()).log(Level.SEVERE, null, ex);
            }
           contador.incrementa(1);
           System.out.println(this.getName() + " ");
        }
    }
    
    static public void main(String args[]) {
        Contador Cc = new Contador();
   
        ContadorHilo hiloA = new ContadorHilo(Cc);
        ContadorHilo hiloB = new ContadorHilo(Cc);
        ContadorHilo hiloC = new ContadorHilo(Cc);

        hiloA.start();
        hiloB.start();        
        hiloC.start();        
        Cc.imprime();
        
    }
}
