Hallo,
ich hätte ein paar grundlegende Fragen zu dem Thema Exceptions.
Exception sollte ja so früh wie möglich abfangen werden.
1. Ich möchte über die Konsole ein paar Strings eingeben. Um im anschluß ein paar verarbeitungen zu Starten. Aktuell habe ich alle eingaben in einem Try/Catch Block stehen. Kann ich das so machen, oder muss ich jeden string einzeln mit einem Try/catch Block behandeln?
2. Kann mann überhaubt mehrere abfragen zusammenfassen und im catch Block unterschiedlich reagieren. wenn ja wie mache ich das?
3. es gibt noch den zusatz "final" wann benutze ich das?
Der Code ist noch nicht fertig, aber ich stelle mir die frage ob das generell so richtig wäre.
Gruß
ich hätte ein paar grundlegende Fragen zu dem Thema Exceptions.
Exception sollte ja so früh wie möglich abfangen werden.
1. Ich möchte über die Konsole ein paar Strings eingeben. Um im anschluß ein paar verarbeitungen zu Starten. Aktuell habe ich alle eingaben in einem Try/Catch Block stehen. Kann ich das so machen, oder muss ich jeden string einzeln mit einem Try/catch Block behandeln?
2. Kann mann überhaubt mehrere abfragen zusammenfassen und im catch Block unterschiedlich reagieren. wenn ja wie mache ich das?
3. es gibt noch den zusatz "final" wann benutze ich das?
Der Code ist noch nicht fertig, aber ich stelle mir die frage ob das generell so richtig wäre.
Java:
try {
System.out.println("Bitte geben Sie Ihre Suchauswahl (1-3) ein:");
String inputConsole = scanner.next();
if (!inputConsole.matches("[1-3]+")) {
System.err.println("Bitte wählen Sie ein Menüpunkt 1-3");
System.exit(1);
}
assert(inputConsole.matches("[1-3]+{1}"));
switch (inputConsole) {
case "1":
assert(inputConsole.equals("1"));
parseData();
sortDataSource();
System.out.println("Bitte geben Sie Ihre Datenquelle ein");
String dataSource = scanner.next();
checkRegex(inputConsole);
AddressBook sourceListAddressBook = new AddressBook(dataSource);
sourceListAddressBook.allAddressSourceList();
break;
case "2":
assert(inputConsole.equals("2"));
parseData();
sortDataSource();
System.out.println("Bitte geben Sie Ihre Datenquelle ein");
String dataSource1 = scanner.next();
filterAttribut();;
System.out.println("Bitte geben Sie Ihre sortier Option ein");
String sortAttribute = scanner.next();
AddressBook attributeListAddressBook = new AddressBook(dataSource1, sortAttribute);
attributeListAddressBook.sortAddressSourceListFromAttribute();
break;
case "3":
assert(inputConsole.equals("3"));
System.out.println("Danke das Sie die Datenbank benutzt haben");
endOfProgramm = false;
break;
default:
break;
}
} catch (Exception e) {
System.err.println("Error2 :" + e);
}
Gruß