Duvida em implements ActionListener

Bom dia!

pessoal,

aki esta meu primeiro programa que contem uma interface grafica, ele e bem simples recebe dois valores digitados pelo usuario e calcula a soma, mas estou com dificuldade na class "Tcalcula implements ActionListener"
segue codigo font, gostaria muito da ajuda de vcs.

import java.awt.;
import java.awt.event.
;

// Inicio da class Tela
class Gui extends Frame{

TextField txtPrimeiro;// Recebe primeiro valor digitado pelo usuario
TextField txtSegundo;// Recebe segundo valor digitado pelo usuario
Button btnSoma; // Botao de soma
float sum, vl1=0, vl2=1;

// Inicio do Metodo Impressao
void impressao()
{
System.out.println(calcula());

}// Fim Metodo Impressao

// Inicio do Metodo Clacula
float calcula ()
{
sum= vl1 + vl2;

   return calcula();

}// Fim da Class Calcula
// Inicio do metodo Construtor
Gui()
{

   // Propriedades do Form
   setSize(300,250);
   setTitle("Somar");
   setLayout(null);
              
    
   // Instancia Tex e Button
   txtPrimeiro = new TextField();
   txtSegundo  = new TextField();   
   btnSoma     = new Button("Somar");

   
   // Propriedades Text e Button
   txtPrimeiro.setBounds(15,70,70,30);
   txtSegundo.setBounds(15,120,70,30);
   btnSoma.setBounds(190,190,70,30);
   btnSoma.addActionListener (new Tcalcula());

   
   
   // Adiciona Text e Button no Form
   add(txtPrimeiro);
   add(txtSegundo);
   add(btnSoma);

   
   setVisible(true);
  addWindowListener ( 
  new WindowAdapter () {
    public void windowClosing (WindowEvent e) 
    {
	
	System.exit (0);
    
    }// Fim windowClosing
  }// Fim WindowAdapter 
);// Fim addWindowListener

}// Fim do Metodo Construtor

class Tcalcula implements ActionListener {
public void actionPerformed (ActionEvent e) {
Gui jo = new Gui ();
jo.vl1 = Float.parseFloat ( txtPrimeiro.getText() );
jo.vl2 = Float.parseFloat ( txtSegundo.getText() );
jo.impressao();

}// Fim ActionEvent 

}// Fim ActionListener
}// Fim da Class Gui

// Inicio da Class Principal
class Tela {

public static void main ( String args[] ){
   
   Gui calc = new Gui();	
	
}// Fim da Metodo Main

}// Fim da Class tela

Alguém tem que fazer essa pergunta:

qual a dificuldade?

Só uma coisa que vi no seu código:

float calcula () 
  { 
    sum= vl1 + vl2; 
    return calcula(); 
  }

Você queria retornar sum, não?

:wink:

Cara obrigado. Funcionou