Larback - Retornando conhecimento

Quantos livros você leu esse ano?

Calculadora - Swing

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JRadioButton;
import javax.swing.JTextField;


public class CalcSimples extends JFrame implements ActionListener {
	private static final long serialVersionUID = 1L;
	JTextField jtN1 = new JTextField();
	JTextField jtN2 = new JTextField();
	JTextField jtResultado = new JTextField();
	JLabel jlN1 = new JLabel(" 1º Numero");
	JLabel jlN2 = new JLabel(" 2º Numero");
	JLabel jlVazio = new JLabel();
	JLabel jlResultado = new JLabel(" Resultado");
	JButton jbCalcular = new JButton("Calcular");
	JRadioButton jrSoma = new JRadioButton("Soma");
	JRadioButton jrSubtracao = new JRadioButton("Subtração");
	JRadioButton jrDivisao = new JRadioButton("Divisão");
	JRadioButton jrMultiplicacao = new JRadioButton("Multiplicação");
	
	ButtonGroup bgOperacoes = new ButtonGroup();
	
	
	public CalcSimples(){
		super("Calculadora simples");
		jrSoma.setSelected(true);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
		setLayout(new GridLayout(4,3));
		bgOperacoes.add(jrSoma);
		bgOperacoes.add(jrSubtracao);
		bgOperacoes.add(jrMultiplicacao);
		bgOperacoes.add(jrDivisao);
		jtResultado.setEnabled(false);

		add(jlN1);
		add(jtN1);
		add(jrSoma);
		add(jlN2);
		add(jtN2);
		add(jrSubtracao);
		add(jlResultado);
		add(jtResultado);
		add(jrMultiplicacao);
		add(jlVazio);
		add(jbCalcular);
		add(jrDivisao);
		pack();
		setLocationRelativeTo(null);
		setVisible(true);
		jbCalcular.addActionListener(this);
		
	}
	public static void main(String []args){
		new CalcSimples();
	}
	public void actionPerformed(ActionEvent obj) {
		if (obj.getSource()==jbCalcular){
			double n1,n2,resultado;
			try{
				n1= Double.parseDouble(jtN1.getText());
			}catch (Exception ex){
				JOptionPane.showMessageDialog(null,"O valor informado não é um número válido.","Atenção",JOptionPane.ERROR_MESSAGE);
				n1 = 0;
				jtN1.requestFocus();
			}
			try{
				n2=Double.parseDouble(jtN2.getText());
			}catch(Exception ex){
				JOptionPane.showMessageDialog(null,"O valor informado não é um número válido.","Atenção",JOptionPane.ERROR_MESSAGE);
				n2 = 0;
				jtN2.requestFocus();
			}
			resultado=0;
			
			if (jrSoma.isSelected()){
				resultado=n1+n2;
				jtResultado.setText(String.valueOf(resultado));
			}
			if (jrSubtracao.isSelected()){
				resultado=n1-n2;
				jtResultado.setText(String.valueOf(resultado));
			}
			if (jrDivisao.isSelected()){
				resultado=n1/n2;
				jtResultado.setText(String.valueOf(resultado));
			}
			if (jrMultiplicacao.isSelected()){
				resultado=n1*n2;
				jtResultado.setText(String.valueOf(resultado));
			}
		}

	}

}