Язык и архитектура Java


Итоги


Освещены следующие стороны Java как объектно-ориентированного языка программирования.

  • Классы определяют шаблон, по которому создаются конкретные объекты
  • Поля данных объекта определяют состояние объекта
  • Объекты обмениваются сообщениями между собой. Получение сообщения приводит к вызову одного из методов
  • Методы определяют поведение объекта данного класса. Методы для разных классов могут иметь одно и то же имя, но различное содержание.

Нейтральный к архитектуре, переносимый и интеллектуальный

Нейтральность к архитектуре

Достигается прежде всего стандартизацией "бинарного формата кодов". Промежуточный код не зависит от конкретной аппаратной платформы, операционной системы и типа оконного интерфейса. Для того, чтобы программы, написанные на Java, могли работать на данной аппаратно-программной платформе, достаточно, чтобы для нее была создана лишь соответствующая виртуальная машина.

Байт-коды

Компилятор Java производит не "машинные коды" подобно тому, как это делает, например, компилятор языка С. Вместо этого генерируются так называемые байт-коды: высокоуровневые машиннонезависимые коды для абстрактной машины, которая должна быть реализована в виде интерпретатора Java и run-time системы.

Сама по себе идея байт-кодов не нова, они широко используются в различных системах начиная с середины семидесятых годов. Особенности Java байт-машины следующие:

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




Начало  Назад  Вперед



Книжный магазин