Языки программирования
<<  Java 2 Micro Edition Java 2 Micro Edition  >>
Картинок нет
Картинки из презентации «Java 2 Micro Edition» к уроку информатики на тему «Языки программирования»

Автор: Сергей Жерздев. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока информатики, скачайте бесплатно презентацию «Java 2 Micro Edition.ppt» со всеми картинками в zip-архиве размером 53 КБ.

Java 2 Micro Edition

содержание презентации «Java 2 Micro Edition.ppt»
Сл Текст Сл Текст
1Java 2 Micro Edition. Технология Java. 28образом, что не могут модифицировать или
Лаборатория информационных технологий исказить отдельные элементы. 28 (с) ИТЛаб,
(ИТЛаб). Проект ТЭЛМА. Жерздев С.В. При ННГУ, ВМК, 2003г Java 2 Micro Edition
поддержке фирмы Intel? 1 (с) ИТЛаб, ННГУ, Жерздев С.В.
ВМК, 2003г Java 2 Micro Edition Жерздев 29Динамическое связывание. Для поддержки
С.В. динамического связывания кода метода
2Технологический цикл обработки каждый фрейм содержит ссылку на область
Java-программ. 2 (с) ИТЛаб, ННГУ, ВМК, констант для соответствующего класса. Код
2003г Java 2 Micro Edition Жерздев С.В. в файле класса содержит указание на
3Технологический цикл. В случае с Java вызываемые методы и используемые
приложения исполняются не на конкретной переменные в виде символических ссылок.
аппаратно-программной платформе, а в Динамическое связывание переводит эти
рамках исполняющей среды. Это обеспечивает символические ссылки в реальные, загружает
платформонезависимость и безопасность необходимые классы и привязывает обращения
Java-приложений, во многом решает вопрос к переменным к соответствующим смещениям в
борьбы с ненадежностью приложений. областях хранения данных. 29 (с) ИТЛаб,
Основные составляющие платформы Java: ННГУ, ВМК, 2003г Java 2 Micro Edition
виртуальная Java машина Java Virtual Жерздев С.В.
Machine (JVM); загрузчик классов ; 30Система команд Java-машины. 30 (с)
верификатор классов ; менеджер ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
безопасности; Java API. 3 (с) ИТЛаб, ННГУ, Edition Жерздев С.В.
ВМК, 2003г Java 2 Micro Edition Жерздев 31Система команд Java-машины. Инструкции
С.В. виртуальной машины Java состоят из
4Виртуальная Java машина. JVM отвечает однобайтового кода операции и следующих за
за ряд существенных моментов языка java , ним нуля или более операндов. Количество и
которые виртуальная машина должна размер операндов однозначно определяются
поддерживать: проверка приведения ссылок кодом операции. Операнды, превышающие один
на различные типы данных; байт, записываются со старших байт. Для
структурированный доступ к памяти большинства типизированных инструкций тип
(отсутствие указателей); автоматическая представляется буквой в мнемокоде
"сборка мусора"; проверка границ операции: i (int), l (long), s (short), b
массивов; проверка ссылок по адресу null. (byte), c (char), f (float), d (double), a
4 (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro (reference). Исключение составляют
Edition Жерздев С.В. операции, специфические для определенного
5Надежность и безопасность. типа (работа с массивами, передача
Вышеприведенные особенности java управления). 31 (с) ИТЛаб, ННГУ, ВМК,
значительным образом сказываются на 2003г Java 2 Micro Edition Жерздев С.В.
надежности и безопасности языка. 32Инструкции загрузки и сохранения.
надежность кода. Сбои приложений могут Операции загрузки и сохранения
негативно сказываться на работе системы в обеспечивают передачу данных между
целом. Особенно это актуально для локальными переменными и стеком операндов
встроенных систем. введение ограничений на фрейма. Загрузить локальную переменную в
доступ к памяти дает возможность избежать стек операндов: iload, iload_<n>,
ситуаций, в которых злоумышленник сможет lload, lload_<n>, fload,
нейтрализовать систему безопасности. fload_<n>, dload, dload_<n>,
структурированный обработчик исключений. aload, aload_<n>. Сохранить значение
Когда происходит ошибка, программа из стека операндов в локальной переменной:
возбуждает исключение и можно istore, istore_<n>, lstore,
предусмотреть его обработку. 5 (с) ИТЛаб, lstore_<n>, fstore,
ННГУ, ВМК, 2003г Java 2 Micro Edition fstore_<n>, dstore,
Жерздев С.В. dstore_<n>, astore,
6Загрузчик классов. Загрузчик классов astore_<n>. Загрузить константу в
Java играет одну из ведущих ролей в стек операндов: bipush, sipush, ldc,
обеспечении безопасности. В виртуальной ldc_w, ldc2_w, aconst_null, iconst_m1,
машине загрузчик классов отвечает за iconst_<i>, lconst_<l>,
импорт бинарных данных, которые содержат fconst_<f>, dconst_<d>. 32 (с)
классы и интерфейсы программы. Существует ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
два типа загрузчиков классов: встроенный Edition Жерздев С.В.
загрузчик и загрузчик-объект. Первый из 33Арифметические инструкции.
них всегда существует в JVM в единственном Арифметические инструкции вычисляют
числе и является частью JVM. Классы, результат операции над элементами стека
загруженным таким загрузчиком, обычно операндов и помещают его в стек операндов.
являются частью Java API и им оказывается Все целочисленные операции манипулируют
особое доверие. 6 (с) ИТЛаб, ННГУ, ВМК, значениями типа int. Целочисленные и
2003г Java 2 Micro Edition Жерздев С.В. вещественные операции отличаются
7Пользовательский загрузчик. Загрузчики поведением при переполнении (игнорируется
классов - объекты пишутся на языке java, на целочисленных, бесконечность на
компилируются в классы и по большому счету вещественных) и делении на 0 (вещественные
являются частью java приложения. Поскольку операции не возбуждают исключений). 33 (с)
загрузчики-объекты написаны на Java, то ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
загружать классы можно множеством Edition Жерздев С.В.
различных способов: через сеть, из 34Арифметические инструкции. Сложение:
локальных или удаленных баз данных и т.п. iadd, ladd, fadd, dadd. Вычитание: isub,
7 (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro lsub, fsub, dsub. Умножение: imul, lmul,
Edition Жерздев С.В. fmul, dmul. Деление: idiv, ldiv, fdiv,
8Пространство имен. Классы могут видеть ddiv. Остаток: irem, lrem, frem, drem.
другие классы только если они загружены Инвертирование знака: ineg, lneg, fneg,
одним и тем же загрузчиком или в программе dneg. Сдвиг: ishl, ishr, iushr, lshl,
есть строгое указание где и что искать. lshr, lushr. Побитовое OR: ior, lor.
Таким образов появляется возможность Побитовое AND: iand, land. Побитовое
организации нескольких пространств имен в исключающее OR: ixor, lxor. Инкремент
одном Java приложении. Классы загруженные локальной переменной: iinc. Сравнение:
в различные пространства имен не могут dcmpg, dcmpl, fcmpg, fcmpl, lcmp. 34 (с)
взаимодействовать, если это строго не ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
оговорено в приложении. Несомненно, это Edition Жерздев С.В.
служит существенным препятствием нарушению 35Инструкции приведения типа.
безопасности функционирующих Java Расширяющее преобразование типа: int к
приложений. 8 (с) ИТЛаб, ННГУ, ВМК, 2003г long, float, или double (i2l, i2f, i2d)
Java 2 Micro Edition Жерздев С.В. long к float или double (l2f, l2d) float к
9Верификатор классов. Каждая JVM имеет double (f2d) Сужающее преобразование типа:
верификатор классов, который проверяет int к byte, short, или char (i2b, i2c,
корректность внутренней структуры i2s) long к int (l2i) float к int или long
загруженного файла. Можно выделить две (f2i, f2l) double к int, long, или float
фазы верификации классов. Первая фаза (d2i, d2l, d2f) Сужающее преобразование
имеет место сразу, как только файл целых типов сохраняет младшие биты,
оказывается загруженным, вторая - во время отбрасывая старшие. 35 (с) ИТЛаб, ННГУ,
исполнения кода. 9 (с) ИТЛаб, ННГУ, ВМК, ВМК, 2003г Java 2 Micro Edition Жерздев
2003г Java 2 Micro Edition Жерздев С.В. С.В.
10Верификатор классов. Во время первой 36Инструкции приведения типа. Приведение
фазы верифицируются формат, внутренняя вещественных к целому выполняется
структура файла, некоторые следующим образом: NaN переходит в-
основополагающие правила языка Java, целочисленный 0. вещественное значение
безопасность инструкций для исполнения. округляется до целого. В случае выхода за
Если верификатор классов находит какое-то границы диапазона используется
нарушение, то вырабатывается ошибка и максимальное или минимальное значение
класс никогда не поступает на выполнение. соответствующего целого типа.
Кроме того, выявляется ряд других Преобразование double к float выполняется
возможных ошибок java , которые по идее в соответствии со стандартом IEEE 754. При
должен был отследить компилятор. 10 (с) переполнении снизу происходит замена нулем
ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro со знаком, при переполнении свеху -
Edition Жерздев С.В. бесконечностью со знаком. NaN всегда
11Верификатор классов. Вторая фаза переходит в NaN. 36 (с) ИТЛаб, ННГУ, ВМК,
является частью процесса динамического 2003г Java 2 Micro Edition Жерздев С.В.
связывания. На этом этапе проверяются 37Поддержка объектов. Экземпляры класса,
символьные ссылки, обнаруженные в файле. и массивы являются объектами. Создать
Динамическое связывание - это процесс новый экземпляр класса: new. Создать
замены символьных ссылок на прямые ссылки массив: newarray, anewarray,
по адресам: находится класс, на который multianewarray. Доступ к полям: getfield,
есть ссылка (если он не загружен, то putfield, getstatic, putstatic. Загрузить
загружается) ; символьная ссылка компонент массива в стек операндов:
замещается прямой ссылкой на класс, baload, caload, saload, iaload, laload,
переменную или метод. Когда JVM faload, daload, aaload. Сохранить значение
преобразует символьную ссылку, верификатор из стека операндов в элементе массива:
классов проверяет эту ссылку на bastore, castore, sastore, iastore,
корректность. 11 (с) ИТЛаб, ННГУ, ВМК, lastore, fastore, dastore, aastore.
2003г Java 2 Micro Edition Жерздев С.В. Получить длину массива: arraylength.
12Менеджер безопасности. Менеджер Проверить свойства объекта: instanceof,
безопасности отвечает за безопасность вне checkcast. 37 (с) ИТЛаб, ННГУ, ВМК, 2003г
JVM. Он определяет права загруженного кода Java 2 Micro Edition Жерздев С.В.
на взаимодействие с внешними объектами. 38Операции над стеком операндов.
Любая инструкция исполняемого кода прежде Непосредственные операции над стеком
чем отправиться на исполнение проверяется операндов обеспечивают инструкции: pop,
менеджером безопасности (если он pop2, dup, dup2, dup_x1, dup2_x1, dup_x2,
установлен). Менеджер безопасности - это dup2_x2, swap. 38 (с) ИТЛаб, ННГУ, ВМК,
класс, наследник класса 2003г Java 2 Micro Edition Жерздев С.В.
java.lang.SecurityManager. Он написан на 39Управление выполнением. Управление
Java и потому является легко потоком выполнения инструкций и обработка
модифицируемым. Такой подход дает исключений осуществляется с помощью
возможность для каждого конкретного операций: Условного перехода: ifeq, iflt,
приложения создавать собственный менеджер ifle, ifne, ifgt, ifge, ifnull, ifnonnull,
безопасности. 12 (с) ИТЛаб, ННГУ, ВМК, if_icmpeq, if_icmpne, if_icmplt,
2003г Java 2 Micro Edition Жерздев С.В. if_icmpgt, if_icmple, if_icmpge,
13Менеджер безопасности. Традиционно if_acmpeq, if_acmpne. Компактного
менеджер безопасности следит за: сетевыми условного перехода: tableswitch,
соединениями; модификацией потока lookupswitch. Безусловного перехода: goto,
(изменением его приоритета и т.п.); goto_w, jsr, jsr_w, ret. Сравнение
созданием нового загрузчика классов; значений типов boolean, byte, char, short
созданием нового процесса; загрузкой осуществляются приведением типов.
динамических библиотек, содержащих Результат сравнения значений long, float,
машинно-зависимые методы; загрузкой класса double реализуется набором инструкций. 39
из определенного пакета; доступом и (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
модификацией системных установок; чтением Edition Жерздев С.В.
и запиью файлов. 13 (с) ИТЛаб, ННГУ, ВМК, 40Вызов методов и возврат значений.
2003г Java 2 Micro Edition Жерздев С.В. Существует четыре операции вызова метода:
14Структура JVM. 14 (с) ИТЛаб, ННГУ, invokevirtual вызывает реализацию метода
ВМК, 2003г Java 2 Micro Edition Жерздев объекта invokeinterface вызывает метод
С.В. интерфейса, осуществляя поиск реализации
15Структура JVM. Спецификация описывает по типу объекта invokespecial вызывает
абстрактную JVM. В спецификации определен метод, требующий специальной обработки -
лишь набор правил, которым виртуальная метод инициализации экземпляра, метод
машина должна удовлетворять. private, или метод суперкласса
Компилированные Java приложения invokestatic вызывает метод класса
представлены двоичными данными в (static) Операции возврата управления
платформонезависимом формате (class). Этот зависят от типа возвращаемого значения и
формат однозначно определяет представление включают ireturn, lreturn, freturn,
классов и интерфейсов. Корректная JVM dreturn, areturn. Иструкция return
должна обеспечивать чтение файлов формата осуществляет возврат без передачи
class и выполнение описанных в нем значения. 40 (с) ИТЛаб, ННГУ, ВМК, 2003г
операций. 15 (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro Edition Жерздев С.В.
Java 2 Micro Edition Жерздев С.В. 41Возбуждение исключений. Исключение
16Структура JVM. Виртуальная машина в возбуждается с помощью инструкции athrow.
процессе работы поддерживает несколько Кроме того, исключения могут возбуждаться
областей данных различного назначения. самой виртуальной машиной. 41 (с) ИТЛаб,
Некоторые из них являются общими, ННГУ, ВМК, 2003г Java 2 Micro Edition
создаются при запуске JVM и освобождаются Жерздев С.В.
при ее завершении. Другие принадлежат 42Особенности реализации. Некоторые из
отдельным потокам и имеют соответствующее классов не могут быть реализованы без
время жизни. Конкретная реализация взаимодействия с виртуальной машиной:
распределения областей памяти, алгоритма Загрузка и создание классов и интерфейсов
сбора мусора и оптимизация выполнения (класс ClassLoader) Связывание и
инструкций оставлена на усмотрение инициализация классов и интерфейсов (класс
разработчиков. 16 (с) ИТЛаб, ННГУ, ВМК, ClassLoader) Безопасность, классы из
2003г Java 2 Micro Edition Жерздев С.В. java.security и класс SecurityManager.
17Типы данных Java-машины. Как и язык Многопоточность, класс Thread. 42 (с)
программирования Java, виртуальная машина ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
поддерживает два вида типов: простые типы Edition Жерздев С.В.
и ссылочные типы. Соответственно, два вида 43Особенности реализации. Конкретная
значений могут храниться в переменных, реализация виртуальной машины остается
передаваться как аргументы, возвращаться свободной от жестко заданных технологий.
методами и быть операндами: простые Реализация может ориентироваться на
значения и ссылочные значения. Операции максимальную производительность,
виртуальной машины однозначно определяет минимальные потребности памяти или вопросы
типы операндов, над которыми они совместимости. Диапазон возможных
производятся. Например, iadd и dadd - реализаций включает: Интерпретирующие
инструкции виртуальной машины, виртуальные машины, преобразующие Java код
обеспечивающие сложение для int и double в инструкции другой виртуальной машины.
соответственно. 17 (с) ИТЛаб, ННГУ, ВМК, Виртуальные машины, преобразующие Java код
2003г Java 2 Micro Edition Жерздев С.В. в машинные коды в процессе загрузки или
18Типы данных Java-машины. Виртуальная выполнения - just-in-time (JIT) code
машина Java содержит явную поддержку generation. 43 (с) ИТЛаб, ННГУ, ВМК, 2003г
объектов, которыми являются динамически Java 2 Micro Edition Жерздев С.В.
созданные экземпляры классов и массивы. 44Создание, инициализация, поддержка и
Ссылки на объекты соответствуют ссылочному уничтожение объектов. 44 (с) ИТЛаб, ННГУ,
типу виртуальной машины. Существует три ВМК, 2003г Java 2 Micro Edition Жерздев
вида ссылочного типа: типы классов, С.В.
массивов и интерфейсов. Кроме того, 45Создание и инициализация объектов.
ссылочное значение может быть специальной Виртуальная машина Java динамически
ссылкой null. 18 (с) ИТЛаб, ННГУ, ВМК, загружает, связывает и инициализирует
2003г Java 2 Micro Edition Жерздев С.В. классы и интерфейсы. Загрузка - процесс
19Регистры. Каждый обрабатываемый JVM поиска двоичного представления класса или
поток имеет собственный регистр pc интерфейса по его имени и создание этого
(program counter). Этот регистр содержит класса или интерфейса по его
адрес текущей исполняемой инструкции JVM. представлению. Связывание - процесс
19 (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 комбинирования класса или интерфейса с
Micro Edition Жерздев С.В. текущим состоянием виртуальной машины для
20Стеки. Каждый обрабатываемый JVM поток последующего исполнения. Инициализация
имеет собственный стек, в котором класса или интерфейса состоит в вызове его
содержатся фреймы. В стеке размещаются метода инициализации. 45 (с) ИТЛаб, ННГУ,
локальные переменные, промежуточные ВМК, 2003г Java 2 Micro Edition Жерздев
результаты, он применяется при вызове С.В.
методов. Поскольку к этому стеку не 46Запуск виртуальной машины. Виртуальная
обеспечивается прямого доступа, за машина Java начинает работу с создания и
исключением операций помещения и инициализации классов, которые являются
извлечения фреймов, стек может быть зависимыми от реализации, с помощью
реализован на базе кучи или фиксированного первичного загрузчика классов (bootstrap
блока памяти. Непрерывности адресного class loader). Затем виртуальная машина
пространства стека не требуется. 20 (с) связывает и инициализирует исходный класс,
ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro и вызывает его метод main(). Вызов этого
Edition Жерздев С.В. метода определяет все последующее
21Куча. Куча виртуальной машины выполнение. В зависимости от реализации,
разделяется между всеми исполняемыми исходный класс может быть указан
потоками. Куча является областью данных различными способами или быть
для размещения экземпляров классов и фиксированным для данной виртуальной
массивов. Куча создается при запуске машины. 46 (с) ИТЛаб, ННГУ, ВМК, 2003г
виртуальной машины. Память высвобождается Java 2 Micro Edition Жерздев С.В.
с помощью автоматической системы 47Создание и загрузка. Создание класса
управления памятью, известной как или интерфейса С с именем N состоит в
"сборщик мусора", объекты не формировании внутреннего представления С в
уничтожаются явным образом. Куча может области методов виртуальной машины. Если С
быть реализована на базе динамического или не является массивом, он создается путем
фиксированного блока памяти. Непрерывности загрузки двоичного представления С.
адресного пространства кучи не требуется. Массивы не имеют внешнего двоичного
21 (с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 представления. 47 (с) ИТЛаб, ННГУ, ВМК,
Micro Edition Жерздев С.В. 2003г Java 2 Micro Edition Жерздев С.В.
22Область методов. Область методов 48Создание и загрузка. Существует два
используется виртуальной машиной для типа загрузчиков классов: определенные
хранения исполняемого кода. Она содержит пользователем и первичный, поддерживаемый
для каждого класса приложений виртуальной машиной. Каждый
соответствующие структуры, такие как набор пользовательский загрузчик является
констант, данные полей, код методов и экземпляром подкласса абстрактоного класса
конструкторов. Область методов создается ClassLoader. Приложения реализуют
при запуске виртуальной машины. Она может загрузчики классов, чтобы расширить набор
быть реализована на базе динамического или способов, которыми виртуальная машина
фиксированного блока памяти. Непрерывности может загружать и создавать классы. Класс
адресного пространства не требуется. 22 может быть загружен по сети, из
(с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro пользовательских исходных файлов,
Edition Жерздев С.В. сформирован в процессе выполнения или
23Набор констант. Область набора извлечен из зашифрованного файла. 48 (с)
констант (Runtime Constant Pool) содержит ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
доступное во время исполнения Edition Жерздев С.В.
представление констант класса или 49Создание и загрузка. Загрузчик классов
интерфейса. Каждая область набора констант L может создать С непосредственно или
содержится в соответствующей части области поручить это другому загрузчику. Во время
методов. 23 (с) ИТЛаб, ННГУ, ВМК, 2003г исполнения класс определяется не своим
Java 2 Micro Edition Жерздев С.В. именем, а парой из его полного имени и его
24Native Method Stacks. Реализация загрузчика <N, L>. Массивы создаются
виртуальной машины может использовать непосредственно виртуальной машиной, но
стеки обычного вида для поддержки методов, загрузчик класса используется при создании
написанных на других языках. Кроме того, классов массивов. 49 (с) ИТЛаб, ННГУ, ВМК,
такой стек может использоваться самой 2003г Java 2 Micro Edition Жерздев С.В.
виртуальной машиной в процессе 50Связывание. Связывание класса или
интерпретации инструкций. Если такие стеки интерфейса включает проверку и подготовку
реализуются, то они, как правило, самого класса или интерфейса, его
создаются для каждого потока. 24 (с) непосредственного суперкласса, его
ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro непосредственных суперинтерфейсов и типов
Edition Жерздев С.В. его элементов (если это массивы).
25Фреймы. Фреймы применяются для Разрешение символических ссылок класса или
хранения данных, динамического связывания, интерфейса является необязательной частью
возврата значений из методов и обработки процесса связывания. 50 (с) ИТЛаб, ННГУ,
исключений. Новый фрейм создается при ВМК, 2003г Java 2 Micro Edition Жерздев
каждом вызове метода и уничтожается при С.В.
его завершении (нормальном или с 51Проверка. Представление класса или
возбуждением исключения). Каждый фрейм интерфейса проверяется, чтобы убедится в
содержит набор локальных переменных, стек корректности структуры его двоичного
операндов и ссылку на набор констант того представления. Проверка может вызвать
класса, чей метод был вызван. В дополнительные загрузки классов или
зависимости от реализации JVM фрейм может интерфейсов, но не вызывает их проверки
быть содержать дополнительную информацию, или подготовки. Любая попытка
используемую, например, для отладки. 25 инициализации класса должна предваряться
(с) ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro его проверкой. 51 (с) ИТЛаб, ННГУ, ВМК,
Edition Жерздев С.В. 2003г Java 2 Micro Edition Жерздев С.В.
26Фреймы. Фреймы размещаются в стеке 52Подготовка. Подготовка включает
соответствующего потока. Размеры набора создание статических полей класса или
локальных переменных и стека операндов интерфейса инициализация их значениями по
определяются на этапе компиляции и умолчанию. Подготовка не выполняет
размещаются с кодом самого метода. Таким никакого кода Java за исключением
образом, вся необходимая память может быть статических блоков. 52 (с) ИТЛаб, ННГУ,
выделена непосредственно при вызове ВМК, 2003г Java 2 Micro Edition Жерздев
метода. В каждый момент времени для С.В.
данного потока активным является только 53Разрешение. Процесс динамического
один фрейм. Этот фрейм называется текущим, определения конкретных значений
ему соответствует текущий метод. Класс, в символических ссылок называется
котором определен текущий метод, разрешением. В процессе разрешения могут
называется текущим классом. 26 (с) ИТЛаб, выполнятся дополнительные проверки,
ННГУ, ВМК, 2003г Java 2 Micro Edition например, является ли разрешаемый метод
Жерздев С.В. статическим. На этом же этапе происходит
27Локальные переменные. Локальные проверка прав доступа. Выполнение
переменные адресуются своими индексами и инструкций anewarray, checkcast, getfield,
образуют массив. Каждая локальная getstatic, instanceof, invokeinterface,
переменная может иметь тип boolean, byte, invokespecial, invokestatic,
char, short, int, float, reference или invokevirtual, multianewarray, new,
returnAddress. Последовательная пара putfield, putstatic требует разрешения
локальных переменных используется для символических ссылок. 53 (с) ИТЛаб, ННГУ,
хранения значений типов long и double. ВМК, 2003г Java 2 Micro Edition Жерздев
Локальные переменные, переданные как С.В.
параметры при вызове метода, имеют 54Инициализация. Инициализация класса
индексы, начиная с 0. Для не статических или интерфейса состоит из вызовов
методов локальная переменная 0 всегда статических блоков инициализации,
содержит ссылку на объект, чей метод был определенных в этом классе и выполняется
вызван. 27 (с) ИТЛаб, ННГУ, ВМК, 2003г только в результате: Выполнения любой из
Java 2 Micro Edition Жерздев С.В. операций виртуальной машины (new,
28Стек операндов. Стек операндов пуст getstatic, putstatic, invokestatic),
при создании фрейма. JVM поддерживает которые ссылаются на класс или интерфейс.
операции загрузки констант, значений При этом класс инициализируется, только
локальных переменных и полей в стек если он еще не инициализирован.
операндов. Другие инструкции JVM извлекают Инициализации одного из его подклассов.
операнды из стека, обрабатывают их и Если класс определен как начальный при
помещают результат обратно в стек. Очень запуске JVM. Перед инициализацией класс
немногие перации виртуальной машины должен быть связан, проверен и
(такие, как dup или swap) оперируют подготовлен, и, возможно, разрешен. 54 (с)
содержимым стека операндов без привязки к ИТЛаб, ННГУ, ВМК, 2003г Java 2 Micro
типу его элементов; они определены таким Edition Жерздев С.В.
Java 2 Micro Edition.ppt
http://900igr.net/kartinka/informatika/java-2-micro-edition-263761.html
cсылка на страницу

Java 2 Micro Edition

другие презентации на тему «Java 2 Micro Edition»

«Классы объектов C» - Ссылочные типы. Console. System Object. Обработка параметров строки. «Класс» и «объект» - два разных понятия. Средства форматирования строк в С#. Ввод и вывод. Инициализация членов. C2.Inty); return 0; WnteLine(“'Arg: {0}", args[x]): } Console. Разрядность всех встроенных типов фиксирована и постоянна.

«Грамматика языков» - Синтаксис большинства известных языков программирования основан именно на КС-грамматиках. К сожалению, все естественные языки относятся к фразовым. Сложность грамматики обратно пропорциональна номеру типа, к которому относится грамматика. КС-грамматики широко используются при описании синтаксических конструкций языков программирования.

«Языки програмирования» - HTML. Уровни языков программирования. Языки программирования высокого уровня. Языки программирования баз данных. Структурированный язык запросов SQL. Компиляторы и интерпретаторы. Расмус. Искусственные языки. Средство эффективной обработки. Си++. Визуальные среды быстрого проектирования. Алгол. Алгоритм и программа.

«Delphi» - Создание калькулятора. Кнопка извлечения корня. Вопросы: Весь урок мы будем создавать калькулятор и обрабатывать некоторые исключения. Сохраняем все, компилируем и смотрим результат. Кнопка вычитания. Кнопка изменения знака числа. Сложение. Смотрим ->. Edit для ввода и отображения цифр. Кнопка извлечения косинуса (думаю здесь все понятно).

«Языки программирования высокого уровня» - Никлаусом Виртом, первоначально для обучения программированию в университетах. Используется на миниЭВМ и ПЭВМ. Маккарти и предназначенный для манипулирования перечнями элементов данных. Относится к категории языков пятого поколения. Отличается развитыми средствами работы с файлами. Лисп [LISP - LISt Processing] - Алгоритмический язык, разработанный в 1960 г. Дж.

«JavaScript» - Невозможно задать только один размер окна. Окно-предшественник. Примеры манипуляции окнами. Написать функцию. Новое свойство security. Методы являются разновидностью свойств. Удаление объектов. Ширина. Объект JavaScript - это неупорядоченный набор свойств. Ширина создаваемого окна в пикселах. Класс объектов с определенным набором свойств.

Языки программирования

23 презентации о языках программирования
Урок

Информатика

130 тем
Картинки