title: How to programmatically find list of classes that have inherited a particular class in Java
body: <p>I have a class called MyClass. Is it possible to programmatically find a list of classes that have inherited MyClass? 
  I know we can use reflection to discover all the superclasses of a given class, but can we find the subclasses?</p>
  
  <p>Is it even theoretically possible to do so (as I haven't heard of a class being aware of when it is being extended) ?</p>