A Java ME configuration specifies a subset of the characteristics that are supported by the Java language, a subset of functions of the JVM configuration, network, security, installation and several other programming APIs.

CDLC is the base one or several profiles. A profile defines an additional set of APIs and characteristics for a specific device.

If we compare CDLC with Java SE, we will see that there are several restrictions over the CDLC Configuration: