Przykład

public static void main( String[] args) {
int number = 0;
try {
number = Integer.parseInt( args[ 0 ] );
} finally {
System.out.println( "klauzula finally" ); //$NON-NLS-1$
if ( number == 0 ) {
throw new IllegalArgumentException( "Zły argument" ); //$NON-NLS-1$
}
}
}

Rozwiązanie
Przenieś instrukcję throw poza blok finally.

public static void main( String[] args) {
int number = 0;
try {
number = Integer.parseInt( args[ 0 ] );
} finally {
System.out.println( "klauzula finally" ); //$NON-NLS-1$
}

if ( number == 0 ) {
throw new IllegalArgumentException( "Zły argument" ); //$NON-NLS-1$
}
}