Welche Suppress-Warnings gibt es?

Neben den von Generics kommenden Kennungen rawtype und unchecked gibt es weitere, die allerdings nicht sonderlich gut dokumentiert sind. Das liegt auch daran, dass Meldungen während der Programmübersetzung zur Compilerinfrastruktur gehören und nicht zur Laufzeitumgebung, und damit nicht zur traditionellen Java-API. Der Compiler kann im Prinzip beliebige Codeanalysen beliebiger Komplexität vornehmen und bei vermuteten Fehlern Alarm schlagen. Um wir dürfen auch nicht vergessen, dass es nur Warnungen sind: wer als Programmierer alles richtig macht, wird die Meldungen nicht zu Gesicht bekommen. Dennoch ist es relevant, sie zu kennen, denn der Compiler wird manches Mal etwas anmerken, was Entwickler bewusst nutzen wollen, und dann gilt es, die Meldungen abzuschalten.

Die Macher vom Eclipse-Compiler (JDT) dokumentieren die unterstützten Warnungen unter http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-suppress_warnings.htm. Neben den aufgeführten Meldungen all, rawtype und unchecked sind folgende noch interessant:

@SuppressWarnings

Unterdrückt Meldungen für

deprecation

veraltete Elemente, wie new java.util.Date(2012-1970, 3, 3).

incomplete-switch

ausgelassene Aufzählungen in swich-case-Anweisungen.

resource

ein nicht geschlossenes AutoClosable, wie new java.util.Scanner(System.in).nextLine().

serial

eine serialisierbare Klasse, die keine Serialisierung-ID besitzt.

unused

nicht benutzte Elemente, etwa nicht aufgerufene private Methoden.

Einige Werte von @SuppressWarnings

Ähnliche Beiträge

Ein Gedanke zu “Welche Suppress-Warnings gibt es?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert