title: Why do we have to call super in Android sometimes?
body: <p>Sometimes when I override methods, I get an exception the first time it's called like below:</p>
  
  <pre><code>05-31 21:32:04.266: E/AndroidRuntime(28471): android.support.v4.app.SuperNotCalledException: 
  Fragment AnalFragment{41795860 #1 id=0x7f070002} did not call through to super.onDestroy()
  </code></pre>
  
  <p>Why are we forced to call <code>super.method()</code>? It makes sense that there are obligations by the parent class, but more importantly, how do we know that a method requires <code>super</code> to be called, rather than waiting for it to crash?</p>