| [ directory ] |
|
J2ME ConfigurationsA configuration is a combination of a Java virtual machine and a collection of Application Programming Interfaces (APIs) that target a certain class of device. A configuration provides the basis for one or more profiles on a device. A profile is a set of APIs that enable functionality and take advantage of a more specific class of devices. A configuration defines a base set of APIs that must be implemented on all devices that support the configuration (which will target, for example, low-power devices with small amounts of memory). The profile sitting on top of the configuration must implement the configuration's APIs as well as APIs that are defined as part of the profile for that specific class of those devices (and the profile will target, say, PDAs). It is important to note that the configuration specifies the capabilities of the underlying virtual machine, but it does not mandate a particular virtual machine. Vendors of profiles and their underlying configurations are free to provide their own virtual machine that conforms to the specification. Connected Limited Device Configuration (CLDC)The CLDC 1.0 was defined by JSR30 and released in May 2000. It targets devices with a set of basic characteristics. A CLDC device:
These characteristics define a wide variety of devices, including pagers, mobile phones, and PDAs. The CLDC defines a common basis for these devices in the following areas:
It does not cover other areas that may be device-specific, such as the user interface, the application lifecycle, and event handling. These areas are covered by profiles. The Java virtual machine providing the core of a CLDC adheres to the Java Virtual Machine Specification and the Java Language Specification, with some exceptions. With regard to the Java Language Specification, CLDC includes the following exceptions. Note that no profile or application on top of CLDC can require these things to be present.
With regard to the Java Virtual Machine Specification, the CLDC includes the following exceptions:
The CLDC inherits most of its classes from J2SE, and defines some CLDC-specific classes. The classes inherited from J2SE use the same class and package names. They include those listed in Appendix A, "Packages in CLDC," on page 207. Packages derived from J2SE use the J2SE names, whereas the CLDC-specific packages use the javax.microedition prefix. The next version of CLDC was defined by JSR139, which was approved in March 2003.[1] The changes in CLDC 1.1 are summarized below:
The full CLDC 1.1 specification is available from http://www.jcp.org/jsr/detail/139.jsp. Connected Device Configuration (CDC)The CDC is a superset of CLDC. The CDC includes all APIs defined by the CLDC, including the java.* packages and the javax.microedition.* packages. CDC is designed for devices with more memory (2 MB of memory or more available to the Java platform) and better network connection (up to 9600 bps and beyond). CDC has a PersonalJava heritage, and so PersonalJava applications that do not use AWT (Abstract Window Toolkit). AWT should be quite portable to CDC (AWT capabilities are defined in CDC's profiles). An implementation of the CDC must include full support for the Java Language Specification and the Java Virtual Machine Specification. The packages of CDC are designed to be a complete set of APIs to support a virtual machine. They are taken from J2SE 1.3, with deprecated APIs removed. The resulting set of packages is as follows:
CDC implementations must support file input/output (I/O) (at least read-only) and datagrams. |
| [ directory ] |
|