Será que são os Métodos Recursivos?

import java.awt.;
import java.awt.Frame;
import java.awt.event.
;
import javax.swing.*;

public class Main extends JFrame {
private JLabel lbl, p, J1, J2, J3, J4 ;
private JButton prox, volta, p1, p2, p3, p4;
private FlowLayout layout;

private int A;

String I= “”;
int P = 0;

public Main(){
super (“Testando Botoes”);

 I = "Testando";
 p = new JLabel (I);           
 lbl = new JLabel ("Questionário para Crianças sobre Educação Ambiental");
 volta = new JButton ("Voltar");
 prox = new JButton ("Proxima");
 
     
 layout = new FlowLayout();
 Container container = getContentPane();
 container.setLayout(layout);

 container.add (lbl);
 container.add (p);
 container.add (volta);
 container.add (prox);
 
 setSize( 400,400);
 setVisible (true);
 
 volta.addActionListener(
         
         new ActionListener(){
     
            public void actionPerformed(ActionEvent event){
                exec1();
                }
           }
    );
    
 prox.addActionListener(
         
         new ActionListener(){
     
            public void actionPerformed(ActionEvent event){
                exec2();
               }
           }
    );
 
switch (P){
        case 1:
            I = "O que é biologia ?";
            break;
        case 2:
            I = "O que é ecossistema ?";
            break;
        case 3:
            I = "O que é Nicho ?";
            break;  
   }

}

public static void main (String args[])
{
Main application = new Main();
application.setDefaultCloseOperation(
JFrame.EXIT_ON_CLOSE);
application.setVisible(true);
}

public int exec1(){
P = P - 1;
return A;
}

public  int exec2(){
    P = P + 1;
    return A;
};

}

Não funciona Galera!!!
javascript:emoticon(’:D’);
javascript:emoticon(’:D’);
Me ajudem aí…

:smiley:

você não disse qual era o problema o.O
então eu deduzi e arrumei a sua classe de acordo com o que eu achava que era a tua intenção…

acho que era isso que você queria =D

import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.*;



public class Main extends JFrame implements ActionListener {
	private JLabel lbl, p;
	private JButton prox, volta;
	private FlowLayout layout;
	
	String I= "";
	int P = 0;
	
	public Main(){
		super ("Testando Botoes");
		
		I = "Testando";
		p = new JLabel (exec2());
		lbl = new JLabel ("Questionário para Crianças sobre Educação Ambiental");
		volta = new JButton ("Voltar");
		prox = new JButton ("Proxima");
		
		
		layout = new FlowLayout();
		Container container = getContentPane();
		container.setLayout(layout);
		
		container.add (lbl);
		container.add (p);
		container.add (volta);
		container.add (prox);
		
		setSize( 400,400);
		setVisible (true);
		
		volta.addActionListener(this);		
		prox.addActionListener(this);

	}
	public void actionPerformed(ActionEvent e){
		if (e.getSource() == prox) {
			p.setText(exec2());
		}
		if (e.getSource() == volta){
			p.setText(exec1());
		}
	}
	public static void main (String args[])
	{
		Main application = new Main();
		application.setDefaultCloseOperation(
				JFrame.EXIT_ON_CLOSE);
		application.setVisible(true);
	}
	
	public String exec1(){
		P--;
		switch (P){
		case 1:
			I = "O que é biologia ?";
			break;
		case 2:
			I = "O que é ecossistema ?";
			break;
		case 3:
			I = "O que é Nicho ?";
			break;
		}
		return I;
	}
	
	public String exec2(){
		P++;
		switch (P){
		case 1:
			I = "O que é biologia ?";
			break;
		case 2:
			I = "O que é ecossistema ?";
			break;
		case 3:
			I = "O que é Nicho ?";
			break;
		}
		return I;
	}
}

deixei repetido o switch você pode arrumar ele depois… não tinha sentido você deixar ele no construtor…
você ainda pode ajeitar mais a classe, eu só ajeitei o ActionListener, porque acho que fica melhor assim =P

espero ter ajudado!
na próxima vez posta a sua dúvida de verdade =/
ninguem é adivinho…
e espero que essa não tenha sido a sua lição de casa!

valeu! =D