Acrescentar procedimentos e tratar exceções

só mais uma ajuda
Preciso acrescentar os procedimentos abaixo para
tratar as exceçoes declaradas:
1- NumberFormatException; Atribuir zero ao campo mat, emitir msg de erro com JOptionPane; Encerrar o programa
2- ArithmeticException; Emitir msg de erro.

import javax.swing.*;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;

public class AplicativoSwing extends JFrame{

private JPanel painel = null;
private JPanel painelCabec = null;
private JPanel painelDados = null;
private JPanel painelDados1 = null;
private JPanel painelRodape = null;
private JLabel form = null;
private JLabel rotulo = null;
private JTextField texto = null;
private JLabel rotulo1 = null;
private JTextField texto1 = null;
private JLabel rotulo2 = null;
private JTextField texto2 = null;
private JLabel rotulo3 = null;
private JTextField texto3 = null;
private JLabel erro = null;
private JButton botao = null;

private ArrayList lista;

public static void main (String args[]){
AplicativoSwing tela = new AplicativoSwing(“Revisão”);
tela.setVisible(true);
tela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

public AplicativoSwing(String titulo){
super(titulo);
setSize(300, 500);

GridLayout gridLayout = new GridLayout();
gridLayout.setRows(4);
gridLayout.setColumns(1);
painel = new JPanel();
painel.setLayout(gridLayout);
setContentPane(painel);

painelCabec = new JPanel();
painelDados = new JPanel();
painelDados1 = new JPanel();
painelRodape = new JPanel();
form = new JLabel(“Cadastro de Novo Usuário”);
rotulo = new JLabel(“UserId”);
texto = new JTextField(10);
rotulo1 = new JLabel(“Password”);
texto1 = new JTextField(10);
rotulo2 = new JLabel(“Matrícula”);
texto2 = new JTextField(4);
rotulo3 = new JLabel(“Nome Completo”);
texto3 = new JTextField(50);
erro = new JLabel();
botao = new JButton(“Login”);
//operacao=newTrataEvento();

lista = new ArrayList();
painel.add(painelCabec);
painel.add(painelDados);
painel.add(painelDados1);
painel.add(painelRodape);

painelCabec.add(form);
painelDados.add(rotulo);
painelDados.add(texto);
painelDados.add(rotulo1);
painelDados.add(texto1);
painelDados.add(rotulo2);
painelDados.add(texto2);
painelDados1.add(rotulo3);
painelDados1.add(texto3);
painelRodape.add(botao);
painelRodape.add(erro);

botao.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt){
erro.setText("");
if (evt.getActionCommand().equals(“Login”)) {
int mat;
try {
mat = Integer.parseInt(texto2.getText());
Usuario user = new Usuario(texto.getText(),
texto1.getText(),mat,texto3.getText());
String msg = “Usuário: “+
user.getUserId()+” “+
user.getPassword()+” “+
user.getMat()+” “+
user.getNome();
JOptionPane.showMessageDialog(painel,msg, “Atenção”,
JOptionPane.INFORMATION_MESSAGE);
lista.add(user);
}
catch (NumberFormatException e){
erro.setText(“Entre com números no campo matrícula”);
texto2.setText(””);
pack();
}
}
}
}); // fim classe interna anônima
pack();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

} // fim do construtor
} // fim da classe
class Usuario {

private String userId;
private String password;
private int mat;
private String nome;
private boolean isAdmin;

public boolean isAdmin() {
return isAdmin;
}

public void setAdmin(boolean isAdmin) {
this.isAdmin = isAdmin;
}
public int getMat() {
return mat;
}

public void setMat(int mat) {
this.mat = mat;
}

public String getNome() {
return nome;
}

public void setNome(String nome) {
this.nome = nome;
}
public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public Usuario(String userId, String password, int mat, String nome) {

this.userId = userId;
this.password = password;
this.mat = mat;
this.nome = nome;
}
public Usuario(int mat, String nome, String password, boolean admin) {

this.password = password;
this.mat = mat;
this.nome = nome;
this.isAdmin = admin;
}
public void imprime() {

}

} // fim classe