Programando com Swing

Bom dia galera
Estou lendo um tutorial sobre programação grafico com swing que pegue nesta comunidade, porem e´o segundo exemplo que faço e não tenho o resultado esperado, eis o codigo[code]
import java.awt.;
import java.awt.event.
;
import javax.swing.*;
public class SwingExemplo02 extends JFrame implements ActionListener{
JButton botao;
JPanel panel;
JTextField texto;

public SwingExemplo02(){
	super("GUJ.com.br");
}
public void criaJanela(){
	texto = new JTextField("Digite algo...");
	
	panel = new JPanel();
	panel.setLayout(new GridLayout(2,1));
	
	botao = new JButton("Click aqui");
	botao.addActionListener(this);
	
	panel.add(texto);
	panel.add(botao);
	
	getContentPane().add(panel, BorderLayout.CENTER);
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	
	pack();
	setVisible(true);
}
public void actionPerformed(ActionEvent event){
	botao.setText(texto.getText());
}

public static void main(String[] args) {
	// TODO Auto-generated method stub
	SwingExemplo02 ex2 = new SwingExemplo02();
	ex2.criaJanela();
}

}
[/code]
O problema é o seguinte:
Quando executo esse codigo, presumo que teva aparecer um botão e uma JTextField, mas não aparece nada, apenas mostra a janela pequena no lada esquerdo do monitor, se maximizo a tela ela não contem nada , o que devo fazer .

Obrigado

Use classes anônimas para implementar eventos. Segue abaixo seu exemplo corrigido.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class SwingExemplo02 extends JFrame {
	JButton botao;
	JPanel panel;
	JTextField texto;
	
	public SwingExemplo02(){
		super("GUJ.com.br");
	}
	public void criaJanela(){
		texto = new JTextField("Digite algo...");
		
		panel = new JPanel();
		panel.setLayout(new GridLayout(2,1));
		
		botao = new JButton("Click aqui");
		botao.addActionListener(new ActionListener(){
		    public void actionPerformed(ActionEvent event){
				botao.setText(texto.getText());
			}
		});
		
		panel.add(texto);
		panel.add(botao);
		
		getContentPane().add(panel, BorderLayout.CENTER);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		pack();
		setVisible(true);
	}
	
	
	public static void main(String[] args) {
		// TODO Auto-generated method stub
	    SwingExemplo02 ex2 = new SwingExemplo02 ();
		ex2.criaJanela();
	}
}

Tenta colocar nos panels.add() o seguinte código:

panel.add(texto,-1);
panel.add(botao,-1);

Se não resolver, dá uma pesquisada nos layout managers. O problema pode ser esse GridLayout que vc tá usando…