title: Null Pointer in getApplicationContext()
body: <p>I'm trying the following piece of code, where a service is implementing my listener:</p>
  
  <pre><code>public class MyListenerClass extends Service implements MyListenerInterface {
      public void onCurrencyRecieved(MyEventClass event) {
          System.out.println("Coins Recieved - Listener Successful");
          stopSelf();
          Toast toast = Toast.makeText(getApplicationContext(), "Service Stopped", Toast.LENGTH_LONG);
          toast.show();        
      }
  
      @Override
      public void onCreate() {
          Toast toast = Toast.makeText(getApplicationContext(),"Service started", Toast.LENGTH_LONG);
          toast.show();
          super.onCreate();
      }
  </code></pre>
  
  <p>Now, the toast inside onCreate() is working fine, but that inside the overridden method is throwing the following exception:</p>
  
  <pre><code>01-03 18:52:35.740: ERROR/AndroidRuntime(2388): java.lang.NullPointerException
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.content.ContextWrapper.getApplicationContext(ContextWrapper.java:100)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at com.test.listenertest1.MyListenerClass.onCurrencyRecieved(MyListenerClass.java:28)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at com.test.listenertest1.MyEventGenerator.generateEvent(MyEventGenerator.java:34)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at com.test.listenertest1.MyEventGenerator.&lt;init&gt;(MyEventGenerator.java:16)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at com.test.listenertest1.NewActivity.onKeyDown(NewActivity.java:33)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.view.KeyEvent.dispatch(KeyEvent.java:1037)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.app.Activity.dispatchKeyEvent(Activity.java:2046)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchKeyEvent(PhoneWindow.java:1631)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.view.ViewRoot.deliverKeyEventToViewHierarchy(ViewRoot.java:2368)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.view.ViewRoot.handleFinishedEvent(ViewRoot.java:2338)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.view.ViewRoot.handleMessage(ViewRoot.java:1641)
  01-03 18:52:35.740: ERROR/AndroidRuntime(2388):     at android.os.Handler.dispatchMessage(Handler.java:99)
  </code></pre>
  
  <p>I guess I'm missing some important java concept. Cant we use getApplicationContext() inside an overridden method ?</p>