Во-первых, вам нужно проверить, является ли ввод нулевым.Если нет, то вы используете для него parseDouble.
Примерно так:
try
{
String i = JOptionPane.showInputDialog("Enter your num:");
if (i != null)
num = Double.parseDouble(i);
}
Кроме того, постарайтесь не перехватывать исключения, поставив «Exception», как вы это сделали.Всегда старайтесь указать исключение, которое вы ищете, как можно больше.В этом случае вы должны использовать NumberFormatException вместо только Exception.
catch (NumberFormatException e)
{
System.err.println("Error: Invalid Input!");
JOptionPane.showMessageDialog(null, "Error: Invalid Input!",
"Error", JOptionPane.ERROR_MESSAGE);
}