Программирование мобильных телефонов на Java

       

Виртуальная машина



2.2.2. Виртуальная машина



Виртуальная машина, используемая в конфигурации CLDC, несколько отличается от обычной виртуальной машины задействованной в Java, но обязана оставаться совместимой со спецификацией этой виртуальной машины (Java Virtual Machine Specification). Виртуальная машина находится непосредственно в телефоне и за совместимостью с общепринятой спецификацией обязаны следить производители мобильных телефонов. Сама же виртуальная машина носит название Kilobyte Virtual Machine (KVM) из-за своей компактности и также имеет ряд недоступных свойств:

1) не поддерживаются операции с дробными числами (floating point);

2) нельзя создать класс загрузчик (class loader); 

3) отсутствует механизм отражения (reflection);

4) не реализован Java Nativ интерфейс (Java Native Interface);



5) не поддерживается финализация (finalization);

6) отсутствует восстановление ошибок после сбоя (error handling);

7) не поддерживается работа с групповыми потоками (Thread group).

Эти недоступные свойства языка Java и виртуальной Java машины, очевидным образом накладывают ощутимые ограничения на создаваемые программы, к сожалению, архитектура аппаратной части телефонов, еще пока не в силах выдержать столь высокую нагрузку и поэтому от перечисленных выше свойств пришлось отказаться.

 


Содержание раздела