Trabalho - Formas Geométricas em Java usando o Wireless Toolkit

Pessoal, tenho que fazer um trabalho para representar 4 formas geometricas utilizando Java e o programa Wireless Toolkit.
Tenho que criar uma hierarquia de classes tendo além das 4 formas geometricas, uma superclasse que chamei de Figura, todas tem que herdar dela, direta ou indiretamente.
Toda classe tem que ter o metodo paint, pra representar graficamente.

Estão dando erros no código e não sei aonde estão os problemas,
abaixo estão os codigos, agradeço desde já …:

CLASSE PRINCIPAL:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
   
    
 public class ClassePrincipal extends MIDlet {  
     Display meuDisplay = Display.getDisplay(this);  
     Figura figura = new Figura();  
    
     public void startApp() {  
         meuDisplay.setCurrent(Figura);  
     }  
     public void pauseApp() {  
     }  
     public void destroyApp(boolean unconditional) {  
     }  
 }  

import javax.microedition.midlet.*; 
import javax.microedition.lcdui.*; 
public class ClassePrincipal extends MIDlet {     
Display meuDisplay = Display.getDisplay(this);     
Figura Figura = new Figura();     
public void startApp() {         
meuDisplay.setCurrent(Figura);     
}     
public void pauseApp() { 
    }    
 public void destroyApp(boolean unconditional) {   
  }
 }

FIGURA:

import javax.microedition.lcdui.*;
    
 public class Figura extends Canvas {  
   
      
   
     int imagem;  
   
     public Figura()  
     {  
        imagem = 0;  
     }  
   
     public void paint(Graphics meuGrafico){  
   
           
         if (imagem == 1){  
           Circulo.paint();  
         }  
         else if (imagem == 2) {  
            Quadrado.paint();  
         }  
         else if (imagem == 3){  
            Triangulo.paint();  
         }  
         else if (imagem == 4){  
            Linha.paint();  
         }  
   
   
     }  
   
     protected void keyPressed(int getTecla){  
   
         if (getTecla == KEY_NUM1){  
             imagem = 1;  
             repaint();  
         }  
         else if (getTecla == KEY_NUM2){  
             imagem = 2;  
             repaint();  
         }  
         else if (getTecla == KEY_NUM3){  
             imagem = 3;  
             repaint();  
         }  
         else if (getTecla == KEY_NUM4){  
             imagem = 4;  
             repaint();   
         }  
   
     }  
   
 }  

import java.awt.Canvas; 
import java.awt.Graphics; 
public class Figura extends Canvas {
int imagem;     
public Figura()     {
        imagem = 0; 
    }    
 public void paint(Graphics meuGrafico){ 
                if (imagem == 1){  
         Circulo.paint(); 
        }  
       else if (imagem == 2) {   
         Quadrado.paint();     
    }        
 else if (imagem == 3){
            Triangulo.paint();
         } 
        else if (imagem == 4){  
          Linha.paint();  
       } 
    }  
   protected void keyPressed(int getTecla){ 
        if (getTecla == KEY_NUM1){  
           imagem = 1;   
          repaint();    
     }      
   else if (getTecla == KEY_NUM2){   
          imagem = 2;  
          repaint();  
       }   
      else if (getTecla == KEY_NUM3){   
          imagem = 3;    
         repaint();    
     }    
     else if (getTecla == KEY_NUM4){  
           imagem = 4;     
        repaint();    
     } 
    }
 }

TRIANGULO:

[code]
import javax.microedition.midlet.;
import javax.microedition.lcdui.
;

public class Triangulo extends Figura {

 int imagem;  

 public void Figura()  
 {  
    imagem = 0;  
 }  

 public void paint(Graphics meuGrafico){  

     //meuGrafico.setColor(Color.BLUE );  
     meuGrafico.fillTriangle(50, 50, 50, 50, 50, 50);  
     }  

}

import java.awt.Graphics;
public class Triangulo extends Figura {
int imagem;
public void Figura() {
imagem = 0;
} public void paint(Graphics meuGrafico){
//meuGrafico.setColor(Color.BLUE );
meuGrafico.fillTriangle(50, 50, 50, 50, 50, 50);
}
}

CIRCULO:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
    
 public class Circulo extends Figura {  
   
     int imagem;  
   
     public void Figura()  
     {  
        imagem = 0;  
     }  
   
     public void paint(Graphics meuGrafico){  
    
        //meuGrafico.setColor(Color.BLUE );  
        meuGrafico.drawLine(10, 10, 200, 200);  
         }  
 }  

import java.awt.Graphics;
 public class Circulo extends Figura {
     int imagem; 
    public void Figura()     {   
     imagem = 0;  
   }  
   public void paint(Graphics meuGrafico){   
     //meuGrafico.setColor(Color.BLUE );   
     meuGrafico.drawLine(10, 10, 200, 200);   
      }
 }

QUADRADO:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
    
 public class Quadrado extends Figura {  
   
     int imagem;  
   
     public void Figura()  
     {  
        imagem = 0;  
     }  
   
     public void paint(Graphics meuGrafico){  
   
         //meuGrafico.setColor(Color.BLUE );  
         meuGrafico.drawRect(10, 10, 200, 200);  
         }  

 }  

import java.awt.Graphics;
 public class Quadrado extends Figura { 
    int imagem;  
   public void Figura()     {   
     imagem = 0;    
 }    
 public void paint(Graphics meuGrafico){  
       //meuGrafico.setColor(Color.BLUE );
         meuGrafico.drawRect(10, 10, 200, 200);  
       }
 }

LINHA:

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
    
 public class Linha extends Figura {  
   
     int imagem;  
   
     public void Figura()  
     {  
        imagem = 0;  
     }  
   
     public void paint(Graphics meuGrafico){  
   
         //meuGrafico.setColor(Color.BLUE );  
         meuGrafico.drawLine(20, 20, 100, 100);  
         }  
 }  

*Erros que são detectados pelo Wireless Toolkit:

Project “Cad” loaded
Project settings saved
Building "Cad"
C:\WTK25\apps\Cad\src\Figura.java:18: cannot find symbol
symbol : method paint()
location: class Circulo
Circulo.paint();
^
C:\WTK25\apps\Cad\src\Figura.java:21: cannot find symbol
symbol : method paint()
location: class Quadrado
Quadrado.paint();
^
C:\WTK25\apps\Cad\src\Figura.java:24: cannot find symbol
symbol : method paint()
location: class Triangulo
Triangulo.paint();
^
C:\WTK25\apps\Cad\src\Figura.java:27: cannot find symbol
symbol : method paint()
location: class Linha
Linha.paint();
^
C:\WTK25\apps\Cad\src\ClassePrincipal.java:10: cannot find symbol
symbol : variable Figura
location: class ClassePrincipal
meuDisplay.setCurrent(Figura);
^
5 errors
com.sun.kvem.ktools.ExecutionException
Build failed

Ola amigão sem olhar
As chamandas Triangolo.paint() ,Circulo.paint() ect… estão erradas pq as que tu ta fazendo são chamadas estaticas.Te aconselho antes de tudo dar uma lida sobre esse modificador conhecido como static!!!.
insere o código “code” no comeco de seu código e o “\code” no final , se não fica inviável analisar seu código :lol: