- •Основы объектно-ориентированного программирования
- •Оглавление
- •Тема 1. Введение в предмет и содержание дисциплины 4
- •Теоретический раздел
- •Тема 1. Введение в предмет и содержание дисциплины
- •Особенности Java
- •Установка Java в переменных окружениях
- •Некоторые из особенностей элементов Java
- •Символы, строки и идентификаторы
- •Комментарии
- •Ключевые слова
- •Литералы
- •Разделители
- •Операции
- •Основные приложения Java
- •Метод update()
- •Требование перерисовки
- •Тема 3. Введение в классы java. Методы и классы. Классы и наследование в java. Пакеты и интерфейсы Введение в классы Java
- •Синтаксис определения экземпляра класса
- •Модификаторы класса
- •Конструкторы
- •Ограничение доступа к элементам класса
- •Статические переменные и методы
- •Абстрактные методы
- •Методы final
- •Область видимости переменных
- •Переменные this и super
- •Тема 4. Основы ввода/вывода. Работа со строковыми данными Работа со строками
- •Потоки ввода-вывода информации
- •Байтовые и символьные потоки
- •Классы байтовых потоков
- •Классы символьных потоков
- •Предопределённые потоки
- •Тема 5. Работа с файлами Классы FileInputStream и FileOutputStream
- •Класс File
- •Класс RandomAccessFile
- •Тема 6. Методы и средства обработки исключений Методы и средства обработки исключений
- •Тема 7. Разработка апплетов, работа с графикой
- •Пакет awt
- •Класс Applet
- •Инициализация и завершение апплета
- •Запуск апплетов
- •Рисование линий в апплете
- •Рисование прямоугольников в апплете
- •Рисование эллипсов и кругов в апплете
- •Рисование дуг в апплете
- •Работа с цветом
- •Тема 8. Многопоточное программирование Интерфейсы в Java
- •Многопоточное программирование
- •Организация потоков
- •Создание нового потока
- •Тема 9. Разработка пользовательского интерфейса с использованием фреймов, элементов управления
- •События
- •Классы событий
- •Класс ActionEvent
- •Элементы-источники событий
- •Интерфейсы прослушивания событий
- •Классы пакета awt: Component, Window, Frame
- •Элементы управления Label, Button, Checkbox, Choice, List, Scrollbar
- •Элементы управления TextField и TextArea
- •Диалоговые окна
- •Контроль знаний Индивидуальная практическая работа № 1. «Объекты и классы»
- •Индивидульная практическая работа № 2. «Наследование и скрытие данных. Абстрактные классы и интерфейсы»
- •Контрольная работа № 1. «Работа с файлами»
- •Контрольная работа № 2. «Разработка пользовательского интерфейса с использованием фреймов, элементов управления»
- •Список использованных источников
Разделители
В Java 9 разделителей: ( ) { } [ ] ; , .
Операции
= ! && ++ -
> <= = = - - *
< >= != + /
Основные приложения Java
Апплеты – это небольшие программы, размещаемые, как правило, на сервере, вызовы которых встраиваются в html-страницу и пересылаются на машину клиента, где выполняются при поддержке браузера.
Для внедрения апплетов Java в среду браузера создается html -тег. Обычно html-документ, вызывающий апплет, и сам апплет располагаются на одном и том же сервере.
Методы, применяемые для работы с апплетами: init( ), start( ), paint(Graphics g), stop( ), destroy( ).
init( ) – отвечает за инициализацию апплета (подобно конструктору), всегда вызывается первым;
start( ) – отвечает за начало работы апплета, вызывается после init( ), может вызываться много раз;
paint(Graphics g) – отвечает за прорисовку апплета, в качестве объекта принимает объект Graphics;
stop( ) – отвечает за приостановку работы апплета, может вызываться много раз;
destroy( ) – отвечает за уничтожение апплета (подобно деструктору).
Пример апплета, иллюстрирующий жизненный цикл его существования:
import java.applet.Applet;
import java.awt.*; /*содержит классы для работы с графикой, переписываем
все классы, входящие в пакет*/
import java.io.*; /*переписываем классы для ввода-вывода*/
public class LifeCycle extends Applet
{
public LifeCycle()
{ System.out.println("Запущен конструктор");
}
public void init()
{ System.out.println("Работает метод init");
}
public void start()
{ System.out.println("Апплет запущен");
}
public void paint(Graphics g)
{ g.drawString("Hello, Word",0,50);
}
public void stop()
{ System.out.println("Апплет остановлен");
}
public void destroy()
{ System.out.println("Апплет уничтожен .\n");
}
}
Чтобы выполнить написанный апплет, необходимо сохранить его в файле LifeCycle с расширением java. Затем с помощью утилиты javac откомпилировать LifeCycle. java. Компилятор создаст файл LifeCycle.class.
Апплет нельзя запустить из командной строки, нужен html-тег:
<HTML>
<TITLE> Жизненный цикл апплета </TITLE>
<APPLET CODE="LifeCycle.class" WIDTH=200 HEIGHT=200>
</APPLET>
</HTML>
Лекция 3
Метод update()
Этот метод используется в тех случаях, когда требуется перерисовать часть окна апплета. Заданная по умолчанию версия update( ) сначала заполняет апплет заданным по умолчанию цветом фона, а затем вызывает paint( ). Если вы заполняете фон, используя другой цвет в paint( ), то пользователь будет видеть вспышку заданного по умолчанию фона, когда вызывает update( ), то есть всякий раз, когда окно перерисовывается.
Один из способов обойти эту проблему заключается в переопределении метода update( ) так, чтобы он исполнял все необходимые действия дисплея. Тогда, вызывая paint( ), просто запускают update( ).
Пример:
public void update(Graphics g)
{ //здесь повторный показ нашего окна
}
public void paint(Graphics g)
{ update(g);
}
