Независимость от архитектуры компьютера

Безопасность

Надежность

Поддержка распределенных вычислений

Язык Java предоставляет мощные и удобные средства для работы в сети. Язык Java предоставляет разработчику обширную библиотеку программ для передачи данных на базе протоколов TCP/IP (Transmission ControlProtocol/Internet Protocol'–протокол, управления передачей/Intemet–протокм,), HTTP (Hypertext Transfer Protocol – протокол передачи гипертекстовой информации) и FTP (File Transfer Protocol – протокол передачи файлов). Приложения, написанные на языке Java, могут открывать объекты и получать к ним доступ по сети; при этом для адресации используются URL (Uniform Resource Location – унифицированный локатор ресурсов). Связь между распределенными объектами в языке Java обеспечивается механизмом вызова удаленных методов.

В. настоящее время сложные распределенные приложения обычно реализуются на базе Java 2 Enterprise Edition (J2EE).

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

Язык Java предназначен для использования в сетевой или распределенной среде. По этой причине большое внимание было уделено безопасности. Java позволяет создавать системы, защищенные от вирусов и несанкционированного доступа. Компания Sun Microsystems развернула исследования в области безопасности Java-программ. Опасные ситуации, возникновение которых предотвращает система безопасности языка Java:

• Намеренное переполнение стека выполняемой программы – один из распространенных способов атаки.

• Повреждение участков памяти, находящихся за пределами пространства, выделенного процессу.

• Несанкционированное чтение файлов и их модификация.

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

Компилятор генерирует объектный файл, формат которого не зависит от архитектуры компьютера. Скомпилированная программа может выполняться на любых процессорах; для ее работы необходима лишь исполняющая машина Java. Код, генерируемый компилятором java, называется байтовым кодом. Он разработан таким образом, чтобы на любой машине его можно было легко интерпретировать либо в процессе работы перевести в набор команд, ориентированных на конкретный процессор.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: