УДК 004.41 (075.8)
ББК 22.18 я73
О 29
Печатается по решению
редакционно -издательского совета
Северо-Кавказского федерального
университета
О 29
Объектно-ориентированное программирование: лабораторный
практикум: в 2 ч. Часть 1 / авт.-сост. Е. И. Николаев. – Ставрополь:
Изд-во СКФУ, 2015. – 183 с.
Лабораторный практикум составлен в соответствии с требованиями Федерального
государственного образовательного стандарта высшего образования
и программой дисциплины.
Первая часть пособия охватывает теоретические аспекты проектирования и
разработки приложений с использованием объектного подхода, а также предназначено
для получения практических навыков программирования приложений
с использованием объектно-ориентированного языка Java. Содержит цикл
лабораторных работ, включающих теоретический материал, методические указания
к их выполнению, контрольные вопросы, литературу.
Предназначено для студентов, обучающихся по направлению подготовки
09.03.02 – Информационные системы и технологии.
УДК 004.41 (075.8)
ББК 22.18 я73
Автор-составитель
канд. техн. наук, доцент Е. И. Николаев
Рецензенты:
канд. техн. наук Ю. В. Рокотов,
д-р техн. наук, профессор А. В. Маликов
© ФГАОУ ВПО «Северо-Кавказский
федеральный университет», 2015
Стр.2
Лабораторный практикум. ЧС 1
ПРЕДИСЛОВИЕ
Особое значение при подготовке специалиста в сфере информационных
систем и технологий имеет практическая подготовка:
производственные задачи автоматизации связаны с многопоточным
программированием, использованием баз данных, применением
сложных структур данных.
Популярность объектного подхода обусловлена объективными
факторами усложнения программных систем и неуклонным повышением
требований к интеллектуальности, производительности, эргономичности,
доступности и адаптивности программного обеспечения
и средств разработки.
Объектно-ориентированное программирование (ООП) как самостоятельное
направление на современном этапе развития информационных
технологий занимает существенную часть всех доступных
средств разработки, анализа, проектирования и моделирования.
Особая роль объектно-ориентированных технологий приводит
к необходимости детального изучения принципов построения программных
компонент информационных систем на базе объектных
технологий. При этом ООП – это только одно из нескольких самостоятельных
направлений изучения и использования теории, в основе
которой лежат термины «объект» и «класс». При употреблении
термина «объектно-ориентированное программирование» подразумевается
вся совокупность всех языков программирования, которые
по совокупным признакам можно отнести к данной группе. Такие
языки относят к объектно-ориентированным языкам программирования
(ООЯП). При этом ООП включает также различные технологии
программирования, которые используются на практике при разработке
приложений на ООЯП.
Современные технологии объектно-ориентированного программирования
интенсивно развиваются – на данный момент программисту
недостаточно понимать простейшие принципы ООП (инкапсуляция,
полиморфизм, наследование). ООП как технология должно
3
Стр.3
Объектно-ориентированное программирование
реагировать на появление новых требований современного высокотехнологичного
мира: параллельный характер процессов в информационных
системах; распределенный характер информационных систем;
повышение требований к защищенности программного обеспечения:
слияние различных технологий разработки приложений и
востребованность унифицированного подхода к проектированию и
разработке веб-приложений, сервисов, интерфейсов.
Цель первой части пособия – сформировать целостный взгляд на
современные тенденции в области объектно-ориентированного программирования;
обеспечить обширным теоретическим материалом,
достаточным для освоения методик разработки приложений; сформировать
систему профессиональных компетенций; научить использовать
широкий спектр инструментов объектного проектирования и
разработки при создании приложений.
Таким образом, содержание первой части пособия направлено на
формирование навыков разработки приложений с использованием
базовых концепций объектно-ориентированного программирования.
В рамках пособия рассматриваются следующие аспекты разработки
приложений:
– использование классов для представления объектов предметной
области;
– жизненный цикл объектов; особенности объявления, переопределения
методов класса;
– особенности применения конструкторов;
– структура программ на языке Java; пакеты и подпакеты;
– механизмы наследования и полиморфного поведения;
– обобщенные классы;
– классы коллекций;
– интерфейсы;
– основы построения графического интерфейса пользователя.
Пособие ориентировано на обучающихся, освоивших синтаксические
правила и базовые технологии языка программирования высоко
уровня (Java или C #). Изложение материала ведется с использованием
примеров на этих языках.
Изучение курса должно сформировать у будущего специалиста
следующие профессиональные компетенции:
4
Стр.4
Лабораторный практикум. ЧС 1
ПК-11 – способность к проектированию базовых и прикладных
информационных технологий;
ПК-12 – способность разрабатывать средства реализации информационных
технологий (методические, информационные, математические,
алгоритмические, технические и программные);
ПК-30 – способность проводить сборку информационной системы
из готовых компонентов.
Для выполнения всех лабораторных работ рекомендуется использовать
персональный компьютер со следующими характеристиками:
64-разрядный (x64) процессор с тактовой частотой 1 ГГц
и выше, оперативная память – 1 Гб и выше, свободное дисковое
пространство – не менее 1 Гб, графическое устройство DirectX 9.
Программное обеспечение: операционная система Windows 7
и выше, Java Development Kit 8 и выше; IDE Eclipse for Java SE
(or Java EE) developers.
При выполнении лабораторных работ необходимо следовать общепринятой
технике безопасности для пользователей персональных
компьютеров. Не следует самостоятельно производить ремонт технических
средств, установку и удаление программного обеспечения.
В случае обнаружения неисправностей необходимо сообщить
об этом администратору компьютерного класса (обслуживающему
персоналу лаборатории).
5
Стр.5
СОДЕРЖАНИЕ
Предисловие .........................................................................................3
1. Классы ...............................................................................................6
2. Объекты ..........................................................................................24
3. Структура программ ......................................................................37
4. Наследование реализации .............................................................48
5. Интерфейсы ....................................................................................71
6. Обобщенные типы .........................................................................79
7. Коллекции .......................................................................................88
8. Графический интерфейс пользователя.
Основы обработки событий ........................................................116
9. События ........................................................................................155
Заключение .......................................................................................178
Литература ........................................................................................179
Приложение ......................................................................................180
Стр.182