Что означает предварительное подтверждение применения J2ME?

Я прочитал следующее:

J2ME applications, unlike normal Java applications are preverified.

Что именно означает предварительное кодирование jar файла J2ME? Это что-то вроде контрольной суммы?

Ответы

Ответ 1

От здесь:

Ответ Preverification - это новый этап в разработке и развертывании цикла для Java-приложений для запуска в JDCM J2ME. Preverification выполняет определенные проверки на байт-коды Java перед во время выполнения. Если эта первая проверка проход одобрен, предупреждающий аннотирует файлы классов (с использованием стандартного Java байт-код "атрибуты", так что эти по-прежнему остаются старыми Java-байт-кодами и будет исполняться в виртуальных машинах, которые не знают о преимущества преверификации) и затем сохраняет аннотированные файлы классов или передает их на следующий инструмент в цепочке компиляции.

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

Справочная реализация Sun CLDC SDK включает инструмент "preverify". Вы использовать инструмент после компиляции кода через javac (или ваш любимый Java компилятор). Дополнительная информация о preverify включен в CLDC спецификации и в разработчике docs, включенные в SDK CLDC.

Ответ 2

Preverification выполняет определенные проверки байт-кодов Java перед временем выполнения. Если этот первый проверочный проход одобрен, преверизатор аннотирует файлы классов (используя стандартные атрибуты байт-кода Java, так что это все еще простые старые байт-коды Java и будут исполняться в виртуальных машинах, не зная о преимуществах предварительной проверки), а затем сохраняет аннотированных файлов классов или передает их вместе со следующим инструментом в цепочке компиляции.