Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие Java.doc
Скачиваний:
17
Добавлен:
07.09.2019
Размер:
569.34 Кб
Скачать

Язык JAVA

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

Java – язык интерпретирующего типа. Программный продукт, написанный на языке программирования Java, компилируется с использованием технологии Java, в платформенно-независимый байткод. Виртуальная машина Java (интерпретатор байткода, ориентированный на конкретную платформу) может интерпретировать этот байткод на любой платформе, на которой установлена виртуальная машина Java. Это означает, что нет необходимости в экспортировании программ.

Первая версия языка java была задумана Джеймсом Гослингом, Патриком Ноутоном, Крисом Вартом, Эдом Франком и Майком Шериданом. Спецификация языка разработана фирмой Sun Microsystems и выпущена компанией Sun Microsystem Inc. в 1991 г, где и работали указанные авторы. Первоначально java был задуман как независимый от платформы язык, с целью внедрения в электронные устройства различных производителей. Позднее открылась и другая его более значительная особенность – пригодность для использования в WWW. Публичное признание язык получил в 1995 году под именем “Java” (Ява).

На Java можно создавать четыре основных вида приложений, которые можно разделить по 2 категориям: апплеты и собственно приложения Java.

  • Апплеты – мини приложения, выполняемые в среде Java совместимого броузера, например Netcscape, Microsoft Exploer, Hot Java и др. Вызов апплета встраивается в HTML страницу при помощи специального тега <APPLET> </APPLET>. Сам апплет размещается, как правило на сервере, загружается при прочтении браузером указанного тега, загружается и выполняется на компьютере клиента.

  • Приложения командной строки - обычное приложение, которые запускаются из командной строки MS-DOS. Для его выполнения необходима специальная утилита-интерпретатор, т.е. виртуальная машина JAVA, поставляемая с пакетом JDK (Java Development Kit);

  • GUI – приложение (Java Grafical User Inerfase) – это обычные программы под Windows, как например, Windows Notepad, которые не требуют для работы присутствия браузера, а их выполнение обеспечивается виртуальной машиной JAVA;

  • Пакеты (похожи на библиотеку классов С++) – это не приложение в чистом виде, а наборы классов (переносимых файлов Java), содержащихся в одном пакете. Как правило, все классы пакета помещаются в один каталог (например, пакет AWT (Abstract Windows Toolkit), где AWT – оконный пользовательский интерфейс) , Java.awt - пакет, входящий в набор инструментальных средств JDK (Java Development Kit).

JAVA – надежный, защищенный, независимый от платформы объектно-ориентированный язык. Язык Java позаимствовал синтаксис языка С++ и его лучшие качества. Стандартные библиотеки Java значительно расширены и включают мощные функции поддержки сетевых соединений. Это позволяет легко создавать средствами Java приложения для Internet.

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

Для апплетов роль виртуальной машины выполняет браузер (язык апплетов имеет определенные ограничения, по сравнению с базовым языком Java). Для других приложений необходима интерпретирующая программа (виртуальная машина Java).

Java - объектно-ориентированный язык

Язык Java является объектно-ориентированным и, следовательно, относится к группе языков, рассматривающих данные как объекты и методы, используемые для этих объектов. Java язык со строгой типизацией, что помогает выявлять возможные скрытые ошибки. В Java отсутствует множественное наследование и указатели, что с одной стороны повышает, читаемость, надежность программного кода, упрощает программирование и предохраняет от множества трудно диагностируемых ошибок, а с другой несколько ограничивает в ряде ключевых возможностей.

Java обеспечивает очень развитую объектно-ориентированную технологию поддержки обработки особых «исключительных» ситуаций. В Java можно создавать совершенно «абстрактные классы», называемые интерфейсами (interface). Интерфейсы позволяют описывать методы, разделяемые и реализуемые между несколькими классами, не учитывая при этом то, как другие классы используют данные методы.

Объекты могут порождаться от любого количество интерфейсов (или одного класса и одного или более интерфейсов).

Виртуальная Java-машина.

О сновной языка Java является виртуальная Java-машина (Java Virtual Machine, JVM).

JVM - это виртуальный компьютер (модель компьютера), располагающийся только в оперативной памяти. JVM позволяет выполнять Java-приложения на множестве платформ, а не только в той системе, для которой скомпилирован код. Возможность компиляции Java-программ для JVM обеспечивает уникальность языка. Но для того чтобы приложения Java выполнялись на конкретной платформе, необходимо реализовать JVM для данной платформы (для каждой платформы своя JVM, что и обеспечивает мобильность JAVA).

Виртуальная машина обеспечивает абстрагируемость откомпилированных Java-программ от аппаратной платформы и операционной системы.

Некоторые особенности Java от С++

В Java – отсутствуют глобальные переменные и функции.

Вводится понятие пакета, представляющее набор классов, включаемых оператором import. Каждый пакет располагается в каталоге, имеющим тоже название, что и пакет.

Для импортирования пакета в апплет необходима строка, например:

import my_kat.in.*;

что говорит о том, что импортируется пакет in из каталога my_kat.in.

Если имя класса myclass, то можно записать следующую строку

import My_kat.in.myclass;

Сиволы, строки и идентификаторы составляют из 16 разрядных кодов UNICODE, где первые 256 символов соответствуют ASCII кодам. Для представления остальных используются escape-последовательности. Последовательности строки \uh, где h – может представлять от одной до 4 цифр. При этом сохранены eskape последовательности С++ \n,\r, \t для сивольных и строковых констант.

В Java отсутствуют структуры С++ (struct, union). Функции (методы) могут быть только компонентами класса (кроме методов из интерфейсов, содержащих только описание методов). Эти методы в определенном смысле аналог виртуальных классов в С++.

Имена классов в Java рекомендуется начинать с большой буквы.

Методы в Java определяют как в С++ небольшие программы, среди которых особым является метод main, с которого начинается выполнение любого Java приложения.

Типы языка Java разделены на две категории: примитивные типы и ссылки. Ссылочные типы - классовые типы, интерфейсные типы, и типы массивов. Имеется также специальный тип null. Объект в языке Java - это динамически созданный экземпляр классового типа или динамически созданный массив. Значения ссылочного типа - это ссылки на объекты. Все объекты, включая массивы, поддерживают методы класса Object. Строковые литералы представляются объектами класса String.