Exception interceptée mais le programme continue de fonctionner

Je suis en train de travailler sur mon premier projet Java mise en œuvre d'une classe appelée "HeartRates" qui prend de l'utilisateur, date de naissance et retourne leur max et la fréquence cardiaque cible. Tout dans le principal programme de test fonctionne, sauf pour une chose, je ne peux pas comprendre comment arrêter le reste du code de l'impression après que l'exception est interceptée.

Je ne suis pas vraiment sûr de toute la partie du code où l'exception est interceptée parce qu'il a été copié et collé à partir de ce que le professeur nous a donné. Si quelqu'un peut me dire comment mettre fin au programme après une erreur se produit, ou d'imprimer un message d'erreur personnalisé et d'arrêter le programme à partir de l'exécution de plus, j'apprécierais.

Voici le code:

 import java.util.Scanner;
 import java.util.GregorianCalendar;

 import javax.swing.JOptionPane;

 public class HeartRatesTest {

public static void main(String[] args) {
    HeartRates test= new HeartRates();
    Scanner input = new Scanner( System.in );
    GregorianCalendar gc = new GregorianCalendar();
    gc.setLenient(false);

        JOptionPane.showMessageDialog(null, "Welcome to the Heart Rate Calculator");;
        test.setFirstName(JOptionPane.showInputDialog("Please enter your first name: \n"));
        test.setLastName(JOptionPane.showInputDialog("Please enter your last name: \n"));
        JOptionPane.showMessageDialog(null, "Now enter your date of birth in Month/Day/Year order (hit enter after each): \n");

        try{
            String num1= JOptionPane.showInputDialog("Month: \n");
            int m= Integer.parseInt(num1);
            test.setMonth(m);
                gc.set(GregorianCalendar.MONTH, test.getMonth());
            num1= JOptionPane.showInputDialog("Day: \n");
            m= Integer.parseInt(num1);
            test.setDay(m);
                gc.set(GregorianCalendar.DATE, test.getDay());
            num1= JOptionPane.showInputDialog("Year: \n");
            m= Integer.parseInt(num1);
            test.setYear(m);
                gc.set(GregorianCalendar.YEAR, test.getYear());

                gc.getTime(); //exception thrown here
        }

        catch (Exception e) {
            e.printStackTrace();
            }   



    String message="Information for "+test.getFirstName()+" "+test.getLastName()+": \n\n"+"DOB: "+ test.getMonth()+"/" +test.getDay()+ "/" 
            +test.getYear()+ "\nAge: "+ test.getAge()+"\nMax Heart Rate: "+test.getMaxHR()+" BPM\nTarget Heart Rate(range): "+test.getTargetHRLow()
            +" - "+test.getTargetHRHigh()+" BPM";
    JOptionPane.showMessageDialog(null, message);
}
mettre le showMessageDialog à l'intérieur de try {} bloc

OriginalL'auteur Mike | 2012-06-09

Leave a Reply

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *