Java (664993), страница 2

Файл №664993 Java (Язык Java) 2 страницаJava (664993) страница 22016-07-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

Приложение Java

Виртуальный процессор Java



Транслятор

Платформа Sun Solaris

Виртуальный процессор Java



Байт-код


Рис. 3. Подготовка приложения Java для работы на разных платформах

Таким образом, приложение Java компилируется и отлаживается только один раз, что уже значительно лучше. Остается, правда, вопрос - как быть с программным интерфейсом операционной системы, который отличается для разных платформ?

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

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

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

Еще одна проблема, возникающая при переносе программ, составленных на языке программирования С, заключается в том, что размер области памяти, занимаемой переменными стандартных типов, различный на разных платформах. Например, в среде операционной системы Windows версии 3.1 переменная типа int в программе, составленной на С, занимает 16 бит. В среде Windows NT этот размер составляет 32 бита.

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

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

Глава 2. Введение в Java

2.1 Версии языка Java. Средства разработки.

Язык Java с момента создания находится в постоянном развитии. В реализации Java 1.1.6 находилось 23 пакета (в Java 1.0.2 их было 8), а количество классов – 503 (211). Последняя версия языка 2.0. Что касается средств разработки приложений и аплетов Java, то первоначально они были созданы фирмой Sun Microsystems и до сих пор пользуются популярностью. Базовой стандартной средой разработки является пакет JDK (Java Development Kit) фирмы Sun. Последняя версия этого пакета на сегодняшний день 1.4.0. Средства JDK не имеют графического интерфейса и запускаются из командной строки. Существует также множество других визуальных средств, таких как JBuilder, Symantec Cafe, VisualJ, Java WorkShop, Java Studio и другие. При написании программ в данной курсовой работе мной использовался стандартный набор JDK v. 1.4.0.

2.2. Примеры создания автономного Java приложения и

апплета.

В этой главе будет создана каноническая программа “HelloJava”. Эта программа будет создана в виде обычного Java приложения и в виде апплета.

2.2.1. Создание Java-приложения “HelloJava”.

Для создания программы можно использовать любой текстовый редактор, например Блокнот. Создаётся в Блокноте текстовый документ с расширением java и именем HelloJava и набирается следующий текст:

public class HelloJava

{

public static void main(String args[])

{

System.out.println("Hello, Java!");

} }

Язык Java требует, чтобы весь программный код был заключен внутри поименованных классов. Приведенный выше текст примера надо записать в файл HelloJava.java. Обязательно соответствие прописных букв в имени файла тому же в названии содержащегося в нем класса. Для того, чтобы оттранслировать этот пример необходимо запустить транслятор Java — javac, указав в качестве параметра имя файла с исходным текстом:

С: \> javac HelloJava.Java

Транслятор создаст файл HelloJava.class с независимым от процессора байт-кодом примера. Для того, чтобы исполнить полученный код, необходимо иметь среду времени выполнения языка Java (программа java), в которую надо загрузить новый класс для исполнения. Важно то, что в качестве параметра указывается имя класса, а не имя файла, в котором этот класс содержится, т.е. расширение class не указывается.

С: > java HelloJava

Если всё прошло успешно, т.е. если ни транслятор, ни интерпретатор не выдал сообщения об ошибке, то на экране появится строка Hello, Java!

Конечно, HelloJava — это тривиальный пример. Однако даже такая простая программа знакомит с массой понятий и деталей синтаксиса языка.

Строка 1

public class HelloJava

В этой строке определен один класс типа public с именем HelloJava. Полное описание класса располагается между открывающей фигурной скобкой во второй строке и парной ей закрывающей фигурной скобкой в строке 7.Заметим, что исходный файл приложения Java может содержать только один класс public, причем имя файла должно в точности совпадать с именем такого класса. В данном случае исходный файл называется HelloJava.java. Если назвать файл helloJava.java, транслятор выдаст сообщение об ошибке. И ещё если класс типа public с именем, совпадающем с именем файла, содержит определение метода main, то такой метод служит точкой входа автономного приложения Java. В этом он напоминает функцию main обычной программы, составленной на языке программирования C.

Строка 3

public static void main(String args [])

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

public

Это — модификатор доступа, который позволяет программисту управлять видимостью любого метода и любой переменной. В данном случае модификатор доступа public означает, что метод main виден и доступен любому классу.

static

Следующее ключевое слово — static. С помощью этого слова объявляются методы и переменные класса, используемые для работы с классом в целом. Методы, в объявлении которых использовано ключевое слово static, могут непосредственно работать только с локальными и статическими переменными.

void

Нужно просто вывести на экран строку, а возвращать значение из метода main не требуется. Именно поэтому и был использован модификатор void.

main

Все существующие реализации Java-интерпретаторов, получив команду интерпретировать класс, начинают свою работу с вызова метода main. Java-транслятор может оттранслировать класс, в котором нет метода main. А вот Java-интерпретатор запускать классы без метода main не умеет.

Все параметры, которые нужно передать методу, указываются внутри пары круглых скобок в виде списка элементов, разделенных символами ";" (точка с запятой). Каждый элемент списка параметров состоит из разделенных пробелом типа и идентификатора. Даже если у метода нет параметров, после его имени все равно нужно поставить пару круглых скобок. В данном примере у метода main только один параметр. Элемент String args[] объявляет параметр с именем args, который является массивом объектов — представителей класса String. Квадратные скобки говорят о том, что мы имеем дело с массивом, а не с одиночным элементом указанного типа. Тип String — это класс.

Строка 5

System.out.println("Hello, Java!");

В этой строке выполняется метод println объекта out. Объект out объявлен в классе OutputStream и статически инициализируется в классе System. Закрывающей фигурной скобкой в строке 6 заканчивается объявление метода main, а такая же скобка в строке 7 завершает объявление класса HelloJava.

2.2.2. Создание Java-апплета “HelloJava”.

Java апплеты, как и Java приложения создаются в виде текстового файла с расширением java. Создаём файл HelloJava.java:

import java.awt.*;

import java.applet.*;

public class HelloJavaApplet extends Applet

{
public void paint(Graphics g)

{
g.drawString("Hello, Java!", 20, 20);

}

}

Апплет начинается двумя строками, которые подключают оператором import все классы иерархий java.applet и java.awt. библиотека java.applet содержит классы, необходимые для создания апплетов, а с помощью библиотеки java.awt апплет может выполнять в своем окне рисование различных изображений или текста. Далее в исходном тексте апплета определяется класс типа public с именем HelloJavaApplet. Это имя должно обязательно совпадать с именем файла, содержащего исходный текст этого класса.

Определенный класс HelloJavaApplet с помощью ключевого слова extends наследуется от класса Applet. При этом методам класса HelloApplet становятся доступными все методы и данные класса, за исключением определенных как private. Класс Applet определен в библиотеке классов java.applet, которую мы подключили оператором import.

Дальше присутствует метод paint, замещающий одноименный метод класса Applet. При вызове этого метода ему передается аргумент, содержащий ссылку на объект класса Graphics. Последний используется для прорисовки нашего апплета. С помощью метода drawString, вызываемого с этим объектом типа Graphics, в позиции экрана (20,20) выводится строка “Hello, Java!”.

Далее, как и в случае Java приложения транслируем содержимое файла HelloJavaApplet.java транслятором javac.exe, получая тем самым байт-код апплета в файле HelloJavaApplet.class. Следующим этапом требуется встроить апплет в HTML документ, который будет в последствии загружен в браузер. Встраивание апплетов происходит с использованием тегов и . Нужно создать файл HelloJavaApplet.html со следующим минимальным содержимым:

CODE — обязательный атрибут, задающий имя файла, в котором содержится оттранслированный код апплета.

WIDTH и HEIGHT — обязательные атрибуты, задающие начальный размер видимой области апплета.

Далее следует поместить файлы HelloJavaApplet.html и HelloJavaApplet.class в один каталог и открыть первый в любом браузере, в который встроена Виртуальная Машина Java на любой платформе. При открытии произойдёт так называемая компиляция "на лету" и апплет будет запущен.

Глава 3. Лексические основы языка.

Целью этой главы является рассмотрение общих аспектов синтаксиса языка. Программы на Java — это набор пробелов, комментариев, ключевых слов, идентификаторов констант и переменных, операторов и разделителей.

Пробелы

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

Комментарии

Хотя комментарии никак не влияют на исполняемый код программы, при правильном использовании они оказываются весьма существенной частью исходного текста. Самые популярные это комментарии в одной строке и комментарии в нескольких строках. Комментарии, занимающие одну строку, начинаются с символов // и заканчиваются в конце строки. Такой стиль комментирования полезен для размещения кратких пояснений к отдельным строкам кода:

а = 42; // если 42 - ответ, то каков же был вопрос?

Для более подробных пояснений можно воспользоваться комментариями, размещенными на нескольких строках, начав текст комментариев символами /* и закончив символами */. При этом весь текст между этими парами символов будет расценен как комментарий и транслятор его проигнорирует.

/*

* Этот код несколько замысловат...

* Попробую объяснить:

*/

Зарезервированные ключевые слова

Зарезервированные ключевые слова — это специальные идентификаторы, которые в языке Java используются для того, чтобы идентифицировать встроенные типы, модификаторы и средства управления выполнением программы. На сегодняшний день в языке Java имеется 59 зарезервированных слов. Эти ключевые слова совместно с синтаксисом операторов и разделителей входят в описание языка Java. Они могут применяться только по назначению, их нельзя использовать в качестве идентификаторов для имен переменных, классов или методов.

Зарезервированные слова Java

abstract

boolean

break

byte

byvalue

case

cast

catch

char

class

const

continue

default

do

double

else

extends

false

final

finally

float

for

future

generic

goto

if

implements

import

inner

instanceof

int

interface

long

native

new

null

operator

outer

package

private

protected

public

rest

return

short

static

super

switch

syncronized

this

throw

throws

transient

true

try

var

void

volatile

while

Слова byvalue, cast, const, future, generic, goto, inner, operator, outer, rest, var зарезервированы в Java, но пока не используются. Кроме этого, в Java есть зарезервированные имена методов. Эти методы наследуются каждым классом, их нельзя использовать, за исключением случаев явного переопределения методов класса Object.

Зарезервированные имена методов Java

clone

equals

finalize

getClass

hashCode

notify

notifyAll

toString

wait

Идентификаторы

Идентификаторы используются для именования классов, методов и переменных. В качестве идентификатора может использоваться любая последовательность строчных и прописных букв, цифр и символов _ (подчеркивание) и $ (доллар). Идентификаторы не должны начинаться с цифры, чтобы транслятор не перепутал их с числовыми литеральными константами, которые будут описаны ниже. Java — язык, чувствительный к регистру букв. Это означает, что, к примеру, Value и VALUE — различные идентификаторы,[1].

Характеристики

Тип файла
Документ
Размер
269 Kb
Материал
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6730
Авторов
на СтудИзбе
284
Средний доход
с одного платного файла
Обучение Подробнее