This can happen if you have two catch statements, and one exception inherits from the other. Depending on how you want to handle the errors, you can either change the ordering of the exceptions or remove one of them.
try
{
byte[] chunk = new byte[TRANSFER_SIZE];
File f = new File("zerowing.zip");
FileInputStream fs = new FileInputStream(f);
fs.read(chunk);
}
catch(IOException e)
{
System.out.println(e);
}
catch(FileNotFoundException f) FileNotFoundException inherits from IOException
{
System.out.println(f);
}