вторник, 6 ноября 2018 г.

1 Что такое язык JAVA. Шо це таке


     Java - кроссплатформенный, строго типизированный объектно-ориентированный язык программирования.
    Дата официального выпуска Java – 23 мая 1995 года.


   Расшифруем данное определение: 


    Основные особенности Java


   1)  Кроссплатформенность и аппаратная переносимость - программы Java могут работать на любой платформе (компьютерной архитектуре), с помощью виртуальной Java-машины.
   (на любом устройстве, для которого существует соответствующая виртуальная машина)

   Под платформой обычно понимают сочетание аппаратной (процессор) и программной (операционная система, ОС) части.
   (Программы Java могут работать на любой платформе (Windows, Linux, MacOS и др.) без перекомпиляции. Для каждой из платформ может быть своя реализация виртуальной машины JVM, но каждая из них может выполнять один и тот же код. JVM обеспечивает интерфейс, который не зависит от операционной системы и аппаратных средств. Эта независимость дает Java программам возможность выполняться на любом устройстве без необходимости внесения каких-либо изменений.)


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


   2) Java cтрого типизированный язык - то есть любая переменная и любое выражение имеет какой-либо тип данных, известный уже на момент компиляции

   3) Технология Java имеет гибкую систему безопасности, в рамках которой исполнение программы полностью контролируется виртуальной машиной.

   Любые операции, которые превышают установленные полномочия программы (например, попытка несанкционированного доступа к данным или соединения с другим компьютером), вызывают немедленное прерывание.


   4) О том, что концепция виртуальной машины имеет недостаток в виде снижения производительности:
   Java совершенствовался в этом ключе:
      применяется технология трансляции байт-кода в машинный код непосредственно во время работы программы (JIT-технология) с возможностью сохранения версий класса в машинном коде, используется платформенно-ориентированный код (native-код) в стандартных библиотеках, аппаратные средства, обеспечивающие ускоренную обработку байт-кода (к примеру, технология Jazelle).

    (Just-in-timeCompiler (JIT) - часть JVM, который оптимизирует байт-код, уменьшая общее время, необходимое для компиляции байт-кода в машинный код) 
 


   Основные возможности JAVA

- автоматическое управление памятью
- расширенные возможности обработки исключительных ситуаций;
- богатый набор средств фильтрации ввода-вывода
- набор стандартных коллекций: массив, список, стек и д. р.
- наличие простых средств создания сетевых приложений (в т.ч. с использованием протокола RMI)
- наличие классов, позволяющих выполнять HTTP-запросы и обрабатывать ответы
- встроенные в язык средства создания многопоточных приложений, которые потом были портированы на многие языки (например Python)
- унифицированный доступ к базам данных: на уровне отдельных SQL-запросов - на основе JDBC, SQLJ
- на уровне концепции объектов, обладающих способностью к хранению в базе данных - на основе Java Data Objects (англ.) и Java Persistence API
- поддержка обобщений (начиная с версии 1.5)
- поддержка лямбд, замыканий, встроенные возможности функционального программирования (начиная с версии 1.8).

   JAVA - базовый язык программирования операционной системы android


    В настоящее время существует три редакции языка Java:

      - Java SE (Java Platform Standard Edition) - стандартная редакция Java, которая используется для разработки простых Java приложений
      - Java EE (Java Platform Enterprise Edition) - редакция Java для разработки распределенных приложений масштаба предприятий
      - Java ME (Java Platform Micro Edition) - редакция Java для разработки приложений для микрокомпьютеров (С небольшим количеством ресурсов, например, телефонов, ТВ-приставок).


   О том, что такое JVM, JRE, JDK, IDK можно прочитать здесь: https://javaika.blogspot.com/2020/09/JVM-JRE-JDK.html

Комментариев нет:

Отправить комментарий

Наследование в Java

   «родительское/дочернее»     Наследование (inheritance) - свойство системы, позволяющее описать (создать) новый класс на основе уже су...