SCMAD: Cap. 01 - CLDC Summary

Requerimentos para a Configuração do CLDC:

  • Programdor não pode modificar o mecanismo de "loading class". Ou seja, mecanismos class- loading customizados não são permitidos no CLDC.
  • Classes devem ser verificadas para serem validadas pelo Pré-verificador CLDC e o verificador em tempo de execução (pre-verifier and runtime verifier).
  • Apenas um conjunto restrito pré-definido de profiles (como MIDP,WMA) são disponíveis ao programador (você não pode usar bibliotecas terceiras a não ser que elas sejam suportadas pelo aparelho).
  • O programador não pode escrever ou usar código nativo que não faz parte dos pacotes pré-definidos (ou seja, não há o método Runtime.exec()). As bibliotecas contendo códigos nativos não podem ser baixados parao dispositivo (a não ser que ele seja parte já do J2ME ou seja disponibilizado pelo fabricante do dispositivo).
  • WeakReference e Reference foram adicionadas ao CLDC 1.1
  • CLDC garante um certo nível de segurança durante a execução dos aplicativos, ou seja, isso significa que um aplicativo java só pode acessar aquelas bibliotecas, recursos do sistema e outros componentes que o ambiente Java permite para acesso. A implementação do CLDC exige o suporte a caracteres Unicode, ou seja, internacionalização.
  • Há Tratamento de Exceções (Exception) no CLDC
  • Tratamento de Eventos (Baixo nível e alto nível) não é do escopo do CLDC, pertence ao profiles como o MIDP.
  • Ambos Runtime.gc() e System.gc() podem ser usados no CLDC para persuadir o Garbage Collector para liberar memória.
  • Garbage Collector não pode ser suspenso ou parado manualmente.
  • O objetivo da especificação do CLDC 1.1:
    • Download dinâmico das aplicações
    • Foco no nível de programação de aplicações
    • Tornar-se o "o menor denominador comum" nos padrões

  • CLDC suporta as seguintes classes collection thread-safe:
    • java.util.Vector
    • java.util.Stack
    • java.util.Hashtable
    • java.util.Enumeration (Interface)


  • Quando encontra qualquer outro erro, a implementação deveria:
    • Parar a máquina virtual de uma maneira específica implementada manualmente pelo fabricante.
    • Ou lançar um Error que é o mais próximo suportado pelo CLDC superclasse da classe ERROR que deve ser lançado de acordo com a especificação da linguagem Java.
  • CLDC 1.1 exige no mínimo 32 KB de memória volátil livres para a execução da máquina Virtual (VM) e no mínimo 160 KB de memória não volátil livres para a máquina Virtual (VM) e as bibliotecas CLDC.
  • A presença de no mínimo um sistema operacional ou kernel para gerenciar o hardware. A presença também de uma entidade para executar a máquina virtual.
  • A codificação padrão (default encoding) é definida pela proprieda do sistema "microedition.ecoding"


  • No CLDC 1.1, a classe java.lang.Math também inclui suporte às funções trigonométricas e o cálculo da raiz quadrada, e ceil e floor (arrendodamento e aproximação).
  • Qualquer tentativa de invocar o método finalize() irá resultar num erro de compilação.
  • Por padrão, as propriedades de caracteres e conversão de cases no CLDC assumem a presença do padrão de caracteres ISO Latin-1 apenas. As implementações devem prover suporte a propriedades de caracteres e conversão de cases no "Latim Basico" (Basic Latin") e "Latin-1 Supplement" (blocos de Unicode 3.0).
  • Class System
  • String.intern()
  • String.equalsIgnoreCase();
  • Boolean.TRUE, Boolean.FALSE
  • Date.toString()
  • Random.nextInt(int i)
  • Thread.interrupt();
  • Timezone no CLDC
  • CLDC provê um processo de verifação em 2 passos. No primeiro passo, que é chamado de pré - verificação (preverification), os seguintes processos são realizados:

    Ø Todas subrotinas são alinhadas.

  • Ø Atributos Special StackMap são adicionadas nos arquivos da classe para facilitiar a verificação em tempo de execução.

    Ø Certos byte codes, que são irrelevantes, são removidos.

  • Desde que os novos atributos são adicionados, o arquivo pré-processado é aumentado em 10 a 15% de tamanho em relação ao arquivo original.

0 comentários:

top