tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
362
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    santiagopicard santiagopicard ist offline Grünschnabel
    Registriert seit
    Feb 2004
    Beiträge
    2
    Wie kann ich Fehler im Konstruktor abhandeln, so dass der Kunde meiner Klasse weiß, dass er den Konstruktor falsch benutzt hat.

    Meinem Konstruktor wird eine String-Variable übergeben.
    Dabei möchte ich prüfen, ob es sich um einen plausiblen Wert handelt.
    (Z.B. 12-stellige Zahl - man denke an Objektschlüssel oder so)
    Wenn ich feststelle, dass er Schrott angeliefert hat wird ein Standarwert gesetzt.
    Zusätzlich soll aber der Kunde meiner Klasse informiert werden, dass etwas schief gegangen ist.
    Ist das möglich?
    Ist das unüblich?
     

  2. #2
    basd basd ist offline Mitglied Brokat
    Registriert seit
    Nov 2003
    Ort
    München
    Beiträge
    264
    Wirf eine Exception. Wenn man es dokumentiert ist es "okay".

    Andere Möglichkeit Zustand der Klasse über eine Bool Variable festhalten (auch von aussen abfragebar), wenn also im Konstruktor was schief geht false setzen , und weitere Aktionen nur im Zustand true weiter führen

    du könntest natürlich auch eine Referenz an den Konstruktor als Variable übergeben und in der steht ein Fehlercode

    ....Geschmackssache...
    weiter vorschläge würden mich auch interessieren
     

  3. #3
    Registriert seit
    Nov 2001
    Ort
    Gießen
    Beiträge
    4.091
    Noch eine Variante dürfte eine statische Methode innerhalb der Klasse sein, die einen privaten Konstruktor aufruft und bei einem Fehler eine Exception zurückliefert.
     

  4. #4
    Registriert seit
    Jul 2003
    Ort
    Duisburg (NRW)
    Beiträge
    1.788
    du könntest natürlich auch eine Referenz an den Konstruktor als Variable übergeben und in der steht ein Fehlercode
    Damit verbaust du dir aber den Gebrauch von Default- bzw. Copy-Constructor. Die beiden müssen dann nämlich private gemacht werden, damit der versehentliche Gebrauch (ohne Fehlercheck) ausgeschlossen ist. Aber gut, nicht alle Klassen brauchen einen Kopierkonstruktor. In diesem Fall, wo anscheinend eine Objekt-ID zur Konstruktion verwendet wird und die Objekte nicht als Werte betrachtet werden können, scheint das in Ordnung zu gehen.
    Geändert von Kachelator (26.02.04 um 08:56 Uhr)
     
    Chor: "Wir sind der Chor, und wir stimmen zu. Wir stimmen zu, wir stimmen zu, wir stimmen zu."

Ähnliche Themen

  1. Konstruktor
    Von thehasso im Forum Java
    Antworten: 6
    Letzter Beitrag: 29.09.09, 12:48
  2. Konstruktor im Konstruktor
    Von ZodiacXP im Forum Java
    Antworten: 4
    Letzter Beitrag: 15.12.08, 16:33
  3. Konstruktor
    Von FingerSkill im Forum PHP
    Antworten: 4
    Letzter Beitrag: 29.04.08, 16:19
  4. Exception im Konstruktor
    Von Leyja im Forum Java
    Antworten: 1
    Letzter Beitrag: 16.12.07, 10:42
  5. Konstruktor im Konstruktor aufrufen?
    Von zarrandreas im Forum .NET Archiv
    Antworten: 1
    Letzter Beitrag: 03.06.05, 16:45