Microsoft Visual J++. Создание приложений и аплетов на языке Java
Аннотация
Введение
Благодарности
Как связаться с авторами
Новый язык программирования
Мобильность Java
Базовые типы данных
Библиотеки классов Java
Встроенные классы
Замещающие классы
Класс String
Другие встроенные классы
Подключаемые библиотеки классов
Библиотека классов java.util
Библиотека классов java.io
Библиотека классов java.net
Библиотека классов java.awt
Библиотека классов java.awt.image
Библиотека классов java.awt.peer
Библиотека классов java.applet
Указатели, которых нет
Массивы в Java
Сборка мусора
Особенности реализации классов в Java
Определение класса
Определение методов
Переопределение операторов
Интерфейсы
Ссылки на методы класса
Наследование
Первое приложение и первый аплет
Приложение Hello
Подготовка и запуск приложения
Взгляд на исходный текст приложения Hello
Простейший аплет
Исходные файлы аплета HelloAp
Файл HelloAp.java
Конструктор HelloAp
Метод getAppletInfo
Метод init
Метод destroy
Метод start
Метод stop
Метод paint
Файл HelloApp.html
Упрощаем исходный текст аплета
Рисование в окне аплета
Контекст отображения
Полотно для рисования
Методы класса Graphics
Установка атрибутов контекста отображения
Выбор цвета
Выбор шрифта
Установка режима рисования
Установка маски для рисования
Сдвиг начала системы координат
Определение атрибутов контекста отображения
Определение границ области ограничения вывода
Определение цвета, выбранного в контекст отображения
Определение шрифта, выбранного в контекст отображения
Определение метрик текущего шрифта
Определение метрик заданного шрифта
Рисование геометрических фигур
Линии
Прямоугольники и квадраты
Многоугольники
Овалы и круги
Сегменты
Задание области ограничения
Копирование содержимого прямоугольной области
Приложение Painter
Исходные файлы приложения Painter
Приложение FontList
Исходный текст приложения
Описание исходного текста
Приложение TextOut
Исходные тексты приложения TextOut
Описание исходных текстов
Поля класса TextOut
Метод getParameterInfo
Обработка событий
Как обрабатываются события
События от мыши
Нажатие клавиши мыши
Отпускание клавиши мыши
Перемещение курсора мыши
Выполнение операции Drag and Drop
Вход курсора мыши в область окна аплета
Выход курсора мыши из области окна аплета
Приложение MouseClick
Исходные тексты приложения
Метод mouseDown
Методы mouseUp, mouseDrag, mouseEnter, mouseExit
Метод mouseMove
Приложение LineDraw
Поля класса LineDraw
Метод mouseUp
Метод mouseDrag
События от клавиатуры
Приложение KeyCode
Исходные тексты приложения KeyCode
Поля класса KeyCode
Метод keyDown
Метод keyUp
Компоненты в окне аплета
Microsoft Visual J++. Создание приложений и аплетов на языке Java
Компоненты в окне аплета - 2Кнопки
Обработка событий от кнопки
Приложение ButtonPress
Исходные тексты приложения ButtonPress
Поля класса ButtonPress
Метод action
Переключатели
Создание переключателей с независимой фиксацией
Создание переключателей с зависимой фиксацией
Приложение CheckBoxes
Исходные тексты приложения CheckBoxes
Поля класса CheckBoxes
Списки класса Choice
Приложение ChoiceList
Исходные тексты приложения ChoiceList
Поля класса ChoiceList
Списки класса List
Описание класса List
Обработка событий от списка класса List
Приложение ListBox
Поля класса ListBox
Текстовое поле класса Label
Приложение TextLabel
Поля класса TextLabel
Текстовое поле класса TextField
Приложение TxtField
Поля класса TxtField
Многострочное текстовое поле класса TextArea
Приложение TextEdit
Настройка системы Layout Manager
Режимы системы Layout Manager
Режим FlowLayout
Режим GridLayout
Приложение Grid
Режим BorderLayout
Приложение Border
Режим CardLayout
Режим GridBagLayout
Работа с панелями
Создание панелей
Добавление панелей
Добавление компонент в панели
Рисование в окне панели
Приложение PanelDemo
Поля класса PanelDemo
Приложение Notebook
Поля класса Notebook
Создание нового класса на базе класса Panel
Приложение Panel2
Класс FirstPanel
Метод paint класса FirstPanel
Класс SecondPanel
Метод paint класса SecondPanel
Окна и диалоговые панели
Окна класса Frame
Меню в окне класса Frame
Классы Menu и MenuItem
Создание диалоговых панелей
Приложение FrameWnd
Microsoft Visual J++. Создание приложений и аплетов на языке Java
Поля класса FrameWndМетод getAppletInfo класса FrameWnd
Метод init класса FrameWnd
Метод destroy класса FrameWnd
Метод action класса FrameWnd
Класс MainFrameWnd
Поля класса MainFrameWnd
Конструктор класса MainFrameWnd
Метод paint класса MainFrameWnd
Метод handleEvent класса MainFrameWnd
Метод action класса MainFrameWnd
Класс MessageBox
Поля класса MessageBox
Конструктор класса MessageBox
Метод handleEvent класса MessageBox
Метод action класса MessageBox
Литература
Microsoft Visual J++. Создание приложений и аплетов на языке Java
МультизадачностьПроцессы, задачи и приоритеты
Процесс
Задача
Приоритеты задач в приложениях Java
Реализация мультизадачности в Java
Методы класса Thread
Создание дочернего класса на базе класса Thread
Реализация интерфейса Runnable
Применение мультизадачности для анимации
Приложение MultiTask
Исходные тексты приложения
Описание исходных текстов
Метод getAppletInfo
Метод init
Метод destroy
Метод paint
Метод start
Метод stop
Метод run
Приложение Rectangles
Исходные тексты приложения
Описание исходных текстов
Метод paint
Метод start
Метод stop
Метод run
Метод mouseEnter
Метод mouseExit
Приложение MultiTask2
Исходные тексты приложения
Описание исходного текста
Поля класса MultiTask2
Метод paint класса MultiTask2
Метод start класса MultiTask2
Метод stop класса MultiTask2
Поля класса DrawRectangles
Конструктор класса DrawRectangles
Метод run класса DrawRectangles
Класс DrawEllipse
Приложение Scroller
Исходные тексты приложения
Описание исходных текстов
Поля класса Scroller
Метод init
Метод paint
Метод start
Метод stop
Метод run
Приложение HorzScroll
Исходные тексты приложения
Описание исходных текстов
Поля класса HorzScroll
Метод init
Метод paint
Метод run
Синхронизация задач
Синхронизация методов
Блокировка задачи
Блокировка на заданный период времени
Временная приостановка и возобновление работы
Ожидание извещения
Ожидание завершения задачи
Приложение Synchro
Исходные тексты приложения
Описание исходных текстов
Поля основного класса аплета
Метод start основного класса
Метод stop основного класса
Поля класса DrawRectangles
Конструктор класса DrawRectangles
Метод run класса DrawRectangles
Поля класса NotifyTask
Метод run класса NotifyTask
Задачи-демоны
Работа с файлами
Классы Java для работы с потоками
Стандартные потоки
Базовые классы для работы с файлами и потоками
Класс InputStream
Класс OutputStream
Класс RandomAccesFile
Класс File
Класс FileDescriptor
Класс StreamTokenizer
Производные от класса InputStream
Класс FilterInputStream
Класс BufferedInputStream
Класс DataInputStream
Класс LineNumberInputStream
Класс PushBackInputStream
Класс ByteArrayInputStream
Класс StringBufferInputStream
Класс FileInputStream
Класс PipedInputStream
Класс SequenceInputStream
Производные от класса OutputStream
Класс FilterOutputStream
Класс BufferedOutputStream
Класс DataOutputStream
Класс PrintStream
Класс ByteArrayOutputStream
Класс FileOutputStream
Класс PipedOutputStream
Работа со стандартными потоками
Стандартный поток ввода
Стандартный поток вывода
Стандртный поток вывода сообщений об ошибках
Приложение Standard
Исходный текст приложения
Описание исходного текста
Создание потоков, связанных с файлами
Создание потока для форматированного обмена данными
Добавление буферизации
Исключения при создании потоков
Запись данных в поток и чтение данных из потока
Простейшие методы
Методы для чтения и записи форматированных данных
Закрывание потоков
Принудительный сброс буферов
Приложение StreamDemo
Исходный текст приложения
Описание исходного текста приложения
Потоки в оперативной памяти
Класс ByteArrayOutputStream
Класс ByteArrayInputStream
Класс StringBufferInputStream
Приложение MemStream
Исходные тексты приложения
Описание исходных текстов
Метод init
Microsoft Visual J++. Создание приложений и аплетов на языке Java
Метод paintКласс StreamTokenizer для разбора входных потоков
Конструктор класса StreamTokenizer
Методы класса StreamTokenizer
Методы для настройки параметров разборщика
Методы для разбора входного потока
Приложение StreamToken
Исходный текст приложения
Описание исходного текста приложения
Описание исходного текста приложения - 2
Класс StringTokenizer
Приложение StringToken
Исходный текст приложения
Описание исходного текста
Работа с файлами и каталогами при помощи класса File
Создание объекта класса File
Определение атрибутов файлов и каталогов
Проверка существования файла или каталога
Проверка возможности чтения и записи
Определение типа объекта - файл или каталог
Получение имени файла или каталога
Получение абсолютного пути к каталогу
Определение типа указанного пути - абсолютный или относительный
Определение пути к файлу или каталогу
Определение родительского каталога
Определение длины файла в байтах
Определение времени последней модификации файла или каталога
Получение текстового представления объекта
Получение значения хэш-кода
Удаление файлов и каталогов
Создание каталогов
Переименование файлов и каталогов
Сравнение объектов класса File
Получение списка содержимого каталога
Приложение FileInfo
Исходный текст приложения FileInfo
Описание исходного текста
Приложение DirList
Исходный текст приложения
Описание исходного текста
Произвольный доступ к файлам
Приложение DirectFileAccess
Исходные тексты приложения
Описание исходных текстов
Метод main
Класс SimpleDBMS
Поля класса SimpleDBMS
Конструктор класса SimpleDBMS
Метод close
Метод AddRecord
Метод GetRecordByNumber
Создание сетевых приложений
Создание сетевых приложений - 2
Адрес IP и класс InetAddress
Создание объекта класса InetAddress для локального узла
Создание объекта класса InetAddress для удаленного узла
Определение адреса IP
Определение имени узла
Сравнение адресов IP
Приложение InetAddressDemo
Исходные тексты приложения InetAddressDemo
Исходные тексты приложения InetAddressDemo - 2
Описание исходных текстов
Универсальный адрес ресурсов URL
Класс URL в библиотеке классов Java
Конструкторы класса URL
Методы класса URL
Метод openStream
Метод getContent
Метод getHost
Метод getFile
Метод getPort
Метод getProtocol
Метод getRef
Метод hashCode
Метод sameFile
Метод equals
Метод toExternalForm
Метод toString
Метод openConnection
Приложение URLDemo
Исходный текст приложения
Описание исходного текста
Приложение ShowChart
Исходные тексты приложения
Описание исходного текста
Поля класса ShowChart
Метод init
Метод paint
Передача данных с использованием сокетов
Работа с потоковыми сокетами
Инициализация сервера
Инициализация клиента
Передача данных между клиентом и сервером
Завершение работы сервера и клиента
Конструкторы и методы класса Socket
Конструкторы класса Socket
Методы класса Socket
Приложения SocketServ и SocketClient
Исходный текст серверного приложения SocketServ
Описание исходного текста серверного приложения SocketServ
Исходный текст клиентского приложения SocketClient
Описание исходного текста клиентского приложения SocketClient
Использование датаграммных сокетов
Класс DatagramSocket
Класс DatagramPacket
Приложения DatagramServer и DatagramClient
Исходный текст приложения DatagramServer
Описание исходного текста приложения DatagramServer
Исходный текст приложения DatagramClient
Описание исходного текста приложения DatagramClient
Связь приложений Java с расширениями сервера Web
Взаимодействие приложения Java и расширения сервера Web
Класс URLConnection
Приложение CallCGI
Исходный текст приложения CallCGI
Описание исходного текста приложения CallCGI
Исходные тексты программы CGI
Растровые изображения и анимация
Загрузка и рисование растрового изображения
Класс Image
Приложение ImageDraw
Исходные тексты приложения
Описание исходных текстов
Поля класса ImageDraw
Метод init
Метод paint
Ожидание загрузки изображений
Применение класса MediaTracker
Создание объекта класса MediaTracker
Добавление изображений в объект класса MediaTracker
Ожидание загрузки добавленных изображений
Другие методы класса MediaTracker
Применение интерфейса ImageObserver
Microsoft Visual J++. Создание приложений и аплетов на языке Java
Приложение ImageDrawWaitИсходные тексты приложения
Описание исходных текстов
Метод init
Метод paint
Приложение DrawImageObserver
Исходные тексты приложения
Описание исходных текстов
Метод init
Метод paint
Метод imageUpdate
Видео в окне аплета
Приложение CDRotation
Исходные тексты приложения
Описание исходных текстов
Метод start
Метод stop
Метод paint
Метод run
Метод displayImage
Звук в аплетах Java
Загрузка и проигрывание звуковых файлов
Приложение Audio
Исходные тексты приложения
Описание исходного текста
Поля класса Audio
Метод getParameterInfo
Метод init
Метод action
Метод start
Метод stop
Взаимодействие между аплетами
Использование интерфейса AppletContext
Получение контекста аплетов
Получение ссылки на аплет
Получение списка всех аплетов
Просмотр списка аплетов
Получение строки информации об аплете
Получение информации о параметрах аплета
Получение значений параметров аплета
Обращение к полям и методам других аплетов
Приложение Inspector
Исходные тексты приложения
Описание исходных текстов
Поля класса Inspector
Метод getAppletInfo
Метод init
Метод paint
Метод action
Комбинированные приложения Java
Структура комбинированных приложений
Главный класс комбинированного приложения
Класс фрейма для комбинированного приложения
Приложение Combi
Исходные тексты приложения
Описание исходных текстов
Поля класса Combi
Метод init
Метод paint
Литература
Содержание раздела