Typical applications include games running on mobile devices such as smartphones with J2ME support and feature phones which have small graphical displays, simple numeric keypad interfaces and limited network access over HTTP.
Over the air (OTA) deployment involves uploading the .jad and .jar files to a Web server which is accessible by the device over HTTP.
[2] Local deployment requires that the MIDlet files be transferred to the device over a non-network connection (such as through Bluetooth or IrDa, and may involve device-specific software).
Unlike a Java applet, a MIDlet is limited to use of the LCDUI rather than the more familiar widgets of AWT and Swing.
There are also restrictions on the size of .jar files and the number of concurrent HTTP connections based on the MIDP specification.