public abstract class MIDlet { private MIDletProxy state; MIDletProxy getProxy() { return state; } protected MIDlet() { state = new MIDletProxy(this); } protected abstract void startApp() throws MIDletStateChangeException; protected abstract void pauseApp(); protected abstract void destroyApp(boolean unconditional) throws MIDletStateChangeException; public final void notifyDestroyed() { state.notifyDestroyed(); } public final void notifyPaused() { state.notifyPaused(); } public final String getAppProperty(String key) { return state.getMIDletSuite().getProperty(key); } public final void resumeRequest() { state.resumeRequest(); } public final boolean platformRequest(String URL) throws javax.microedition. io.ConnectionNotFoundException { return state.platformRequest(URL); } public final int checkPermission(String permission) { return state.checkPermission(permission); } }
----------------------------
可以看到这些操作都是通过委托类来实现的.MIDletProxy.
所以关键关注MIDletProxy.