Throwing custom exceptions in Java
<p>Why do I need to wrap my thrown custom exceptions with <code>try</code>/<code>catch</code> whilst trying to throw them, but I don't have to do that for generic exceptions? Like in the example, my <code>Exception</code> subclass :</p>

<pre><code>public class MyException extends Exception {
    public MyException(String msg) {
        super(msg);
    }
}
</code></pre>

<p>Throwing exceptions :</p>

<pre><code>public class Exe {

    private static void testex(String test) {
        if (null!=test) {
            throw new UnsupportedAddressTypeException();
        } else {//Removing try/catch block results in compile failure
          try {
            throw new MyException("message");
          } catch (MyException e) {
            e.printStackTrace();
          }
        }
    }
}
</code></pre>
