duda Con Applet

Que tal comunidad tengo una duda con un applet que estoy haciendo es muy sencillo solo que
no encuentro la forma de solucionar el siguiente problema.

Tengo el siguiente applet el cual simula una pista de carreras como las que hacen de 100 mts entonces mi idea es que mediante hilos se simule una carrera.

La cuestion es que a la hora de hacer mis personas que vayan corriendo en el metodo Run no me acepta el metodo  <h2> drawImage(nino,50,50);</h2>

          nino=getImage(getDocumentBase ( ), "patinador.gif");          
           Graphics g = getGraphics();
           this.g.drawImage(nino,50,50);

Solo me acepta pasarle un metodo String y es por eso que solo puedo ponerle la "*" pero mi idea es que
vayan corriendo los personajes.

lo que intente fue hacer la instancia como la puse arriba, despues lo intente hacer en el metodo Paint
pero el problema es que si lo dibuja pero no corre al nivel del hilo y pues suena logico porque no esta en el metodo Run

Como podre hacer para pasar la imagen al metodo run sin que me diga que no encuentra la clase.

import java.awt.*;
import java.applet.*;

public class carrera extends Applet
{
  Image rayas,bandera,nino;
 
  public void paint (Graphics g)
  {

    g.drawImage(rayas,1,100,this);
    g.drawImage(rayas,1,200,this);
    g.drawImage(rayas,1,300,this);
    g.drawImage(rayas,1,400,this);
    g.drawImage(rayas,1,500,this);
    g.drawImage(bandera,1200,1,this);    
   
  }
   
  public void init()
  {

    setBackground(Color.GRAY );
    rayas = getImage(getDocumentBase ( ), "lineas.gif");
    bandera=getImage(getDocumentBase ( ), "meta.gif");
    Graphics g = getGraphics();
    Balon b1 = new Balon(g,50,"pepe");
    b1.start();
   
  }

    private class Balon extends Thread
    {
     int y;
     Image nino;
     Graphics g;

     public Balon(Graphics g,int pista,String nombre)
     {
        super(nombre);
        this.g = g;
        y=pista;

     }
     public void run()
     {
        //Graphics g = getGraphics();
//        nino=getImage(getDocumentBase ( ), "patinador.gif");
//        g.drawImage(nino,50,50,this);        
        for(int n=1;n<1200;n++)
        {
           g.drawString("*",n,y);
           nino=getImage(getDocumentBase ( ), "patinador.gif");          
           Graphics g = getGraphics();
           this.g.drawImage(nino,50,50);
               

           try
           {
              sleep(10);
           }
           catch(InterruptedException e){
              System.err.println("Error de excepcion");
           }
        }
        System.out.print(getName() );
     }
  }
}