Владимир Цишевский - Java как центр архипелага

Здесь есть возможность читать онлайн «Владимир Цишевский - Java как центр архипелага» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Год выпуска: 1996, Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Java как центр архипелага: краткое содержание, описание и аннотация

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

Статья опубликована в журнале Jet Info, №9, 1996 г.

Java как центр архипелага — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Java как центр архипелага», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

писанию монолитных программ, второй приводит к очень большому

числу классов.

В реальной жизни используется компромиссная идеология -

handleEvent переопределяется для составных об®ектов, об®единяю-

щих несколько элементов интерфейса и отвечающих за ясно опреде-

ленную часть работы приложения (например, разного рода диало-

ги).

Кроме того, возможны и другие модели обработки событий, направ-

ленные на лучшее отделенин логики программы от ее интерфейса. В

качестве одного из примеров реализации альтернативной модели

можно указать пакет "The Command Class for AWT objects", кото-

рый написал Jan Newmarch, jan@ise.canberra.edu.au.

4.3.5. Методы класса Component, связанные с обработкой событий

Ниже перечислены методы класса Component, связанные с обработ-

кой событий.

- postEvent(). Этот метод, как правило, вызывается автоматичес-

ки при наступлении соответствующего события.

- Обрабатываются события при помощи метода handleEvent(). По

умолчанию этот метод, в зависимости от типа события, вызывает

один из специализированных обработчиков событий, таких как

- - action()

- - keyUp()

- - mouseDown()

- - gotFocus()

и т.д.

Метод handleEvent() может быть переопределен. В этом случае,

как правило, вся обработка соответствующего события будет про-

исходить именно в этом методе, однако, если handleEvent() возв-

ращает false, то вызывается handleEvent() для контейнера, со-

держащего данную компоненту.

События в AWT представляются с помощью об®ектов класса Event, в

котором определены следующие переменные:

public Object target; // инициатор события

public long when; // время, когда событие произошло

public int id; // тип события(KEY_PъESS, MOUSE_DOWN...)

public int x; // координаты

public int y; // курсора

public int key; // код клавиши

public int modifiers;// код модификатора (control, shift ...)

public Object arg; // вспомогательные данные

public Event evt; // поле для соединения событий в списки

Приведем типичный пример обработки событий, когда все они обра-

батываются на верхнем уровне (в данном случае на уровне апле-

та).

class MyApplet extends Applet {

. . .

public boolean action( Event evt, Object arg) {

. . .

if ((ev.target instanceof Button) && arg.equals ("OK")) {

// Выполнить соответствующие действия

. . .

return true;

} else {

// Другие случаи

. . .

}

. . .

return false;

}

. . .

}

В этом примере, если инициатор события имеет тип Button с име-

нем "OK", то выполняются соответствующие действия и возвращает-

ся значение true, то есть событие дальше не передается.

Другой способ обработать событие заключается в создании специа-

лизированной компоненты. Пример.

class OKButton extends Button {

. . .

public boolean action (Event e, Object arg) {

// Выполнить соответствующие действия

. . .

return true;

}

}

Мы видим, насколько глубоко продумана в проекте Java связь с

операционным окружением. Удалось достичь удачного сочетания бо-

гатства возможностей с переносимостью.

5. Joe - технология связывания Java-программ

с об®ектными бизнес-приложениями

Выше, в разделе "Java, Joe и NEO", мы писали о том, что новый

продукт компании SunSoft - Joe - призван осуществлять связь

между клиентскими компонентами, написанными на языке Java, и

об®ектными серверами приложений, созданными в среде NEO. При

этом Joe берет на себя все (или почти все) технические пробле-

мы, связанные с работой в распределенной об®ектной среде, обес-

печивая в то же время для Java-программ полноценное взаимодей-

ствие с произвольными об®ектными сервисами.

В предыдущих выпусках Jet Info была опубликована шутливая "Эво-

люция программиста". Мы добавим к ней еще два раздела. Первый

из приводимых ниже примеров написан на языке Java и можеи ис-

пользоваться в составе обычных, локально работающих аплетов.

1 import java.awt.Font;

2 import java.awt.Color;

3 public class JAVAhello extends java.applet.Applet {

4 Font f = new Font ("Timesъoman", Font.BOLD, 36);

5 public void init () {

6 resize (150, 25);

7 }

8 public void paint (Graphics g) {

9 g.setFont (f);

10 g.setColor (Color.blue);

11 g.drawString ("Hello, World!", 50, 25);

12 }

13 }

Теперь модифицируем программу для Joe, чтобы обеспечить возмож-

ность работы в среде клиент/сервер.

1 import sunw.services.*;

2 import java.awt.Graphics;

3 import java.awt.Font;

4 import java.awt.Color;

5 public class JOEhello extends sunw.services.JOEApplet {

6 sunw.corba.Objectъef obj;

7 Hello.HelloWorldъef hiThere;

8 Font f = new Font("Timesъoman", Font.BOLD, 36);

9 public void init () {

10 super.init ();

11 resize (150, 25);

12 obj = find ("HelloWorldServer");

13 hiThere = Hello.HelloWorldStub.narrow (obj);

14 }

15 public void paint (Graphics g) {

16 g.setFont (f);

17 g.setColor (Color.red);

// Получим строку из удаленного об®екта, реализованного на C++,

// и выведем ее.

18 g.drawString (hiThere.sayHello (), 50, 25);

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Java как центр архипелага»

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


Отзывы о книге «Java как центр архипелага»

Обсуждение, отзывы о книге «Java как центр архипелага» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x