Exception < Java < Programmiersprachen < Praxis < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 13:31 Do 03.04.2008 | Autor: | RalU |
Aufgabe | Hallo!
Es geht um folgende Aufgabenstellung. Und zwar soll eine Methode mit 3 Parametern erstellt werden. Was diese Methode letztendlich tuen soll, ist für meine Fragen irrelevant. Wichtig ist folgendes: Dabei soll eine Exception "ungültige Angabe" ausgelöst werden, wenn
1. einer der 3 Parameter <= 0 oder
2. einer der 3 Parameter nicht vorhanden oder
3. einer der 3 Parameter nicht ganzzahlig oder
4. größer als das systembedingte Maximum ist |
Jetzt frage ich mich, wie ich am besten vorgehe. Angenommen ich würde das Programm, das diese Methode enthält so gestalten, dass ich vom Benutzer die Parameter als Eingaben erwarte, um dann damit diese Methode aufzurufen. Dann wäre es doch gleich sinnvoll nur Integer-Eingaben zuzulassen. Allerdings kann ich ja dann keine Exception mehr werfen, da ja so ohnehin kein Wert eingegeben wird, der nicht ganzzahlig ist. Weiterhin weiß ich nicht, wie ich denn die Methode überhaupt aufrufen kann, ohne die korrekte Anzahl an Parametern zu haben. Oder gibt es dafür eine spezielle Exception?
Wer kann mir helfen?
Gruß, Ralf
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 14:09 Do 03.04.2008 | Autor: | rainerS |
Hallo Ralf!
> Es geht um folgende Aufgabenstellung. Und zwar soll eine
> Methode mit 3 Parametern erstellt werden. Was diese Methode
> letztendlich tuen soll, ist für meine Fragen irrelevant.
> Wichtig ist folgendes: Dabei soll eine Exception "ungültige
> Angabe" ausgelöst werden, wenn
> 1. einer der 3 Parameter <= 0 oder
> 2. einer der 3 Parameter nicht vorhanden oder
> 3. einer der 3 Parameter nicht ganzzahlig oder
> 4. größer als das systembedingte Maximum ist
> Jetzt frage ich mich, wie ich am besten vorgehe.
> Angenommen ich würde das Programm, das diese Methode
> enthält so gestalten, dass ich vom Benutzer die Parameter
> als Eingaben erwarte, um dann damit diese Methode
> aufzurufen. Dann wäre es doch gleich sinnvoll nur
> Integer-Eingaben zuzulassen. Allerdings kann ich ja dann
> keine Exception mehr werfen, da ja so ohnehin kein Wert
> eingegeben wird, der nicht ganzzahlig ist. Weiterhin weiß
> ich nicht, wie ich denn die Methode überhaupt aufrufen
> kann, ohne die korrekte Anzahl an Parametern zu haben. Oder
> gibt es dafür eine spezielle Exception?
Ich beantworte die letzte Frage mal zuerst: ab Java 1.5.0 (was vom Marketing J2SE 5 genannt wurde) gibt es Methoden mit einer variablen Anzahl von Argumenten. Ich habe das selbst noch nie benutzt, aber es geht etwa so (ungetestet):
1: | public method(Object... params) {
| 2: |
| 3: | // params wird hier als Typ Object[] angesprochen
| 4: | }
|
Hier kannst du dann die Länge des Arrays params zu prüfen und zu versuchen, die einzelnen Elemente nach Integer zu konvertieren. Dabei solltest du die mögliche Exception abfangen, und die gewünschte Exception "ungültige Angabe" selber werfen.
Viele Grüße
Rainer
|
|
|
|