Du bist nicht angemeldet.

Werbeanzeige

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

191

30.01.2013, 14:19

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
        if (data.numVal() != null
                && !data.numVal().equals(Short.valueOf("0"))
                && !data.numVal().equals(Short.valueOf("1"))
                && !data.numVal().equals(Short.valueOf("2"))
                && !data.numVal().equals(Short.valueOf("3"))
                && !data.numVal().equals(Short.valueOf("4"))
                && !data.numVal().equals(Short.valueOf("5"))) {
            result = something;
            if (logger.isDebugEnabled()) {
                logger.debug("...");
            }
        }

:dash:
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Architekt

Community-Fossil

Beiträge: 2 490

Wohnort: Hamburg

Beruf: Student

  • Private Nachricht senden

192

30.01.2013, 14:40

Arbeitscode? :)
Der einfachste Weg eine Kopie zu entfernen ist sie zu löschen.
- Stephan Schmidt -

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

193

30.01.2013, 18:56

Ja, mal wieder. Wer immer das auch geschrieben hat, er ist überbezahlt.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

194

07.02.2013, 08:20

Quellcode

1
2
3
4
        catch (Exception e) {
            ...
            throw e;
        }

Wer braucht schon den Original-Stacktrace... :dash:
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

195

07.02.2013, 14:03

Ist hierbei nicht relevant was bei ... passiert ? Wenn man die Exception an zwei verschiedenen stellen behandeln möchte kann man das doch so machen, oder ?

Schrompf

Alter Hase

Beiträge: 1 418

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

196

07.02.2013, 14:06

Nein, dafür gibt es die Möglichkeit, die orginale Ausnahme erneut zu werfen. Das geht ganz einfach über:

Quellcode

1
2
3
4
catch (Exception e) {
  ...
  throw;
}


Also ohne Parameter.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

197

07.02.2013, 14:35

Oder halt eine neue werfen:
throw new Foo("Additional Description", e);

Grauenvoll bei der "falschen" Variante ist halt, dass man damit hübsch den Stacktrace versaut.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

dot

Supermoderator

Beiträge: 9 833

Wohnort: Graz

  • Private Nachricht senden

198

07.02.2013, 14:36

Wobei ich der Meinung bin, dass sowas in der Regel den Sinn von Exceptions untergräbt. Entweder ich kann eine Exception sinnvoll behandlen, oder eben nicht. Dass es den Stacktrace zerstört, ist natürlich zusätzlich schlecht, aber imo ist sowas meistens wohl ein Symptom von wesentlich grundlegenderen Problemen mit dem Code...

Edit: Bezog sich auf die zwei Postings vor dem ober mir.

BlueCobold

Community-Fossil

Beiträge: 10 859

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

199

07.02.2013, 14:37

Bedingt, ja. An der Stelle da wird zusätzliche Debug-Info generiert, dann fliegt die Exception wieder und wird danach *nicht* behandelt, sondern führt zum Fehlschlagen eines Tests.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

dot

Supermoderator

Beiträge: 9 833

Wohnort: Graz

  • Private Nachricht senden

200

07.02.2013, 14:39

Ok, das Generieren von zusätzlicher Debug Info ist natürlich einer der Fälle, wo sowas möglicherweise Sinn macht...

Werbeanzeige