Ok, damit ich mit einer Unterschrift (Class<? extends Throwable>... exceptions)
ein Verfahren bin Aufruf und ich bekomme eine hier im Hauptverfahren Warnung „File.java unkontrolliert oder unsichere Operationen verwendet“:Warum ist varargs (Klasse <? Extends Throwable> ... t) "ungeprüfte oder unsichere" Operation?
public class VarargsFun {
public void onException(Class<? extends Throwable>... exceptions) { }
public static void main(String[] args) {
new VarargsFun().onException(IllegalArgumentException.class);
}
}
Sollte nicht der Compiler in der Lage sein sehen Sie, dass IllegalArgumentException
tatsächlich RuntimeException
, Exception
und Throwable
verlängert?
Wie sollte ich meinen Code richtig ändern, um diese Warnung loszuwerden?
ich nicht wirklich das Gefühl, dass meine Ausnahmen Instanziieren ... es schöner zu verwenden, scheint die .class
(nicht will, @SuppressWarnings
entweder verwenden!)
java ist mit 7.em Vielen Dank für alle Tipps .
Sind Sie sicher, dass die Warnung von 'thenThrow' und nicht' when' kommt? Wie wird 'mockQuery' deklariert? Ist es ein Nachahmer einer generischen Klasse? –
Ok Ich habe den Code in ein testbares Beispiel geändert. – vikingsteve