borrando una forma en java

Estoy tratando de dibujar círculos que aparecen cada segundo, pude hacerlo, pero ¿cómo hago para que desaparezca la forma anterior?

 public void paint(Graphics g) {
  try {
    while (true) {
        Shape circle = new Ellipse2D.Double(500*Math.random(),500*Math.random(), 50.0f, 50.0f);
        Graphics2D ga = (Graphics2D)g;
        ga.draw(circle);
        ga.setPaint(Color.green);
        ga.fill(circle);
        ga.setPaint(Color.red);
        Thread.sleep(1000);

    }
} catch (InterruptedException e) {
    e.printStackTrace();
} 

}

Respuesta 1

Simplemente obtenga el color de fondo y úselo para cubrir el círculo antiguo con un círculo de color de fondo.

Respuesta: 2

Intenta llamar a lo super.paint(g);primero en el bucle.

Respuesta: 3

Estoy intentando crear un atributo personalizado que pueda asignarse a un usuario de Active Directory existente en mi dominio. No estoy completamente consciente de cómo lograr esto. Tengo entendido que una vez que ...

No puedo eliminar la tabla con el usuario predeterminado SA (o cualquier usuario) en HSQLDB, aunque puedo crear una tabla y leerla sin problemas, consulte mi código a continuación, ¿qué sucede? En el otro ...

¿Alguien sabe de alguna manera de controlar otras ventanas y aplicaciones desde una aplicación Java de escritorio? Es fácil iniciar aplicaciones con ProcessBuilder, pero no puedo operarlas. ¿Cómo puedo minimizar, maximizar, ...

Tengo el servicio web REST escrito en Java. Ahora quiero deshabilitar el servicio web, como los servicios (métodos GET) no serán accesibles a través de URI o por aplicación. Eso significa que todavía puedo acceder al servicio ...