Программирование на Java

       

Программирование на Java

Что такое Java?
История создания Java
Сложности внутри Sun Microsystems
Проект Green

Компания FirstPerson
World Wide Web
Возрождение OaK
Java выходит в свет
История развития Java
Браузеры
Сетевые компьютеры
Платформа Java

Основные версии и продукты Java
Заключение
Пакетные средства

Интегрированные средства разработки
Подключение к Internet
Документация и литература
Мобильность Java
Базовые типы данных

Библиотеки классов Java
Встроенные классы
Замещающие классы
Класс String
Другие встроенные классы
Подключаемые библиотеки классов
Библиотека классов java.util
Библиотека классов java.io
Библиотека классов java.net

Библиотека классов java.awt
Библиотека классов java.awt.image
Библиотека классов java.awt.peer
Библиотека классов java.applet
Указатели, которых нет
Массивы в Java
Сборка мусора
Особенности реализации классов в Java

Определение класса
Определение методов
Переопределение операторов
Интерфейсы
Ссылки на методы класса
Наследование

Программирование на Java

Методология процедурно-ориентированного программирования
Методология объектно-ориентированного программирования
Объекты
Состояние
Поведение
Уникальность

Классы
Инкапсуляция
Полиморфизм
Типы отношений между классами
Агрегация
Ассоциация
Наследование
Метаклассы

Достоинства ООП
Недостатки ООП
Заключение
Первое приложение Java
Установка Java WorkShop
Запуск Java WorkShop
Создание нового проекта

Исходный текст приложения HelloJava
Кодировка
Анализ программы
Пробелы
Комментарии

Лексемы
Виды лексем
Идентификаторы
Ключевые слова
Литералы
Целочисленные литералы
Дробные литералы
Логические литералы

Символьные литералы
Строковые литералы
Null-литерал
Разделители
Операторы
Пример программы
Дополнение. Работа с операторами
Операторы присваивания и сравнения
Арифметические операции
Логические операторы

Битовые операции
Заключение
Первый аплет Java
Создание проекта аплета
Исходный текст аплета

Методы в классе HelloApplet
Метод init
Метод destroy
Метод start
Метод stop
Исходный текст документа HTML
Изменяем исходный текст аплета
Метод paint

Иерархия классов
Вызов метода paint
Метод getAppletInfo

Программирование на Java

Введение
Переменные
Примитивные и ссылочные типы данных
Примитивные типы
Целочисленные типы

Дробные типы
Булевский тип
Ссылочные типы

Объекты и правила работы с ними
Класс Object
GetClass()
Equals()
HashCode()
ToString()
Finalize()

Класс String
Класс Class
Заключение
Рисование в окне аплета
Контекст отображения
Методы класса Graphics
Методы
Установка атрибутов контекста отображения

Выбор цвета
Выбор шрифта
Класс Font
Поля класса
Битовые маски стиля шрифта
Методы
Определение атрибутов контекста отображения
Определение границ области ограничения вывода

Определение цвета, выбранного в контекст отображения
Определение шрифта, выбранного в контекст отображения
Определение метрик текущего шрифта
Определение метрик заданного шрифта
Рисование геометрических фигур
Линии
Прямоугольники и квадраты
Многоугольники
Поля класса
Конструкторы

Методы
Овалы и круги
Сегменты
Задание области ограничения
Копирование содержимого прямоугольной области
Аплет Draw
Исходные тексты аплета Draw
Метод init
Извлечение списка шрифтов
Получение значения параметров

Метод paint
Документ HTML для аплета Draw
Проект для аплета Draw
Введение
Простые и составные имена. Элементы
Имена и идентификаторы

Область видимости (введение)
Пакеты
Элементы пакета
Платформенная поддержка пакетов
Модуль компиляции
Объявление пакета
Импорт-выражения

Объявление верхнего уровня
Уникальность имен пакетов
Область видимости имен
"Затеняющее" объявление (Shadowing)
"Заслоняющее" объявление (Obscuring)
Соглашения по именованию
Заключение
События
Как обрабатываются события

События от мыши
Нажатие клавиши мыши
Отпускание клавиши мыши
Перемещение курсора мыши
Выполнение операции Drag and Drop
Вход курсора мыши в область окна аплета
Выход курсора мыши из области окна аплета
Аплет LineDraw

Исходный текст аплета LineDraw
Описание исходного текста
Поля класса LineDraw
Метод getAppletInfo
Метод init
Метод paint
Метод mouseDown
Метод mouseUp
Метод mouseDrag

Метод mouseMove

Программирование на Java

Введение
Модификаторы доступа
Предназначение модификаторов доступа
Разграничение доступа в Java
Объявление классов

Заголовок класса
Тело класса
Объявление полей
Объявление методов
Объявление конструкторов
Инициализаторы
Дополнительные свойства классов
Метод main
Параметры методов
Перегруженные методы
Заключение
Компоненты в окне аплета

Кнопки
Конструкторы
Методы
Обработка событий от кнопки
Переключатели
Класс Checkbox
Конструкторы

Методы
Создание переключателей с независимой фиксацией
Создание переключателей с зависимой фиксацией
Списки класса Choice
Класс Choice
Создание списков
Списки класса List

Описание класса List
Создание списка класса List
Обработка событий от списка класса List
Текстовое поле класса Label
Поля

Создание поля класса Label
Текстовое поле класса TextField
Создание текстового поля класса TextField
Многострочное текстовое поле класса TextArea

Создание поля TextArea
Аплет FormDemo
Исходный текст аплета FormDemo
Описание исходного текста
Поля главного класса
Метод init
Метод action

Программирование на Java

Введение
Виды приведений
Тождественное преобразование

Преобразование примитивных типов (расширение и сужение)
Преобразование ссылочных типов (расширение и сужение)
Преобразование к строке
Запрещенные преобразования
Применение приведений
Присвоение значений

Вызов метода
Явное приведение
Оператор конкатенации строк
Числовое расширение
Унарное числовое расширение
Бинарное числовое расширение
Тип переменной и тип ее значения
Заключение
Работа с системой Layout Manager

Режимы системы Layout Manager
Режим FlowLayout
Класс FlowLayout
Поля
Конструкторы
Методы
Режим GridLayout
Конструкторы

Режим BorderLayout
Конструкторы класса BorderLayout
Методы класса BorderLayout
Применение класса BorderLayout
Режим CardLayout
Конструкторы класса CardLayout
Методы класса CardLayout
Использование режима размещения CardLayout
Режим GridBagLayout

Аплет FormLayout
Исходный текст аплета FormLayout

Программирование на Java

Статические элементы
Ключевые слова this и super

Ключевое слово abstract
Интерфейсы
Объявление интерфейсов
Реализация интерфейса
Применение интерфейсов
Полиморфизм
Поля

Полиморфизм и объекты
Работа с панелями
Создание панелей
Добавление панелей
Добавление компонент в панели
Рисование в окне панели

Создание нового класса на базе класса Panel
Аплет Options
Исходный текст аплета Options
Описание исходного текста аплета Options
Главный класс аплета Options
Метод init
Класс FirstPanel

Класс CardPanel
Поля класса CardPanel
Конструктор класса CardPanel
Класс ControlPanel
Поля класса ControlPanel
Конструктор класса ControlPanel

Программирование на Java

Массивы как тип данных в Java
Объявление массивов
Инициализация массивов

Многомерные массивы
Класс массива
Преобразование типов для массивов
Ошибка ArrayStoreException
Переменные типа массив и их значения
Клонирование
Клонирование массивов

Заключение
Окна и диалоговые панели
Окна класса Frame
Поля
Конструкторы
Методы
Применение класса Frame
Меню в окне класса Frame

Работа с классом MenuBar
Класс Menu
Работа с классом Menu
Класс MenuItem
Создание диалоговых панелей

Использование класса Dialog
Приложение MenuApp
Исходный текст приложения MenuApp
Описание исходного текста приложения MenuApp
Класс MenuApp
Класс MainFrameWnd
Поля класса MainFrameWnd

Конструктор класса MainFrameWnd
Метод paint
Метод handleEvent
Метод action
Класс MessageBox
Поля класса MessageBox
Конструктор класса MessageBox
Метод handleEvent класса MessageBox
Метод action класса MessageBox