title: Custom Exception class - extends from Exception or Thowable?
body: <p>I am designing a custom Exception class for my application. I have a very basic question. Should I extend from <strong>Exception class</strong> or <strong>Thowable class</strong> ? What are the benefits ? </p>
  
  <p>I intend to throw this from underlying layers and catch it in the top level classes. Will it influence my decision of using Thowable over Exception.  Is it fundamentally right to catch a Thowable ? </p>
  
  <p>I 've gone through some other threads in this forum. They talk about having the stack trace maintained when it is thrown and not having it for exception etc.
  I understand that some say ( <a href="https://stackoverflow.com/questions/498217/when-should-throwable-be-used-instead-of-new-exception">here</a>) that Thowable is super class of Exception and we should not use it. But others (<a href="https://stackoverflow.com/questions/2129647/exception-vs-throwable-in-java">here</a>) say Exception is for "Exceptional " cases.  </p>
  
  <p>This question is rather a discussion of how one is better than other rather than asking how. </p>