- •Міністерство освіти й науки україни технікум промислової автоматики одеської державної академії холоду
- •Об’єктно-орієнтована
- •Технологія програмування
- •Методичні вказівки до виконання лабораторних робіт для спеціальності:
- •5. 05010301 «Розробка програмного забезпечення»
- •Література
- •Лабораторна робота №1 Інтегроване середовище Net Beans. Розробка лінійної програми
- •Лабораторна робота №3 Програмування обчислювальних процесів з розгалуженням
- •Лабораторна робота №4 Циклічні конструкції мови Java Мета роботи: отримання практичних навичок програмування завдань з використанням циклічних конструкцій.
- •Лабороторна робота №5 Програми, які реалізують розгалуження. Оператор switch
- •Лабороторна робота №6 Розробка програм, які застосовують оператори переходу. Оператор continue
- •Лабораторна робота №7 Розробка програм, які застосовують оператори переходу. Оператор break
- •Лабораторна робота №11 Спадкування
- •Лабораторна робота №12 Спадкування. Поліморфізм
- •Лабораторна робота №13 Абстраткні класи
- •Лабораторна робота №14 Реалізація інтерфейсу
- •Лабораторна робота №15 Спадкоємство інтерфейсів. Реалізація в одному класі декількох інтерфейсів. Змінні інтерфейса
- •Лабораторна робота №16 Пакети
- •Лабораторна робота №17 Обробка виняткових ситуацій. Принцип обробки
- •Лабораторна робота №18 Обробка виняткових ситуацій. Створення власних класів виняткових ситуацій
- •Лабораторна робота №19 Зображення геометричних фігур. Управління кольором
- •Лабораторна робота №20 Виведення тексту
- •Лабораторна робота №21
- •Лабораторна робота №22 Обробка подій, пов’язаних з кнопкою
- •Лабораторна робота №23 Обробка подій, пов’язаних з кнопкою. Менеджер компоновки FlowLayout: особливості використання
- •Лабораторна робота №24 Менеджер компоновки BorderLayout: особливості використання
- •Лабораторна робота №25 Менеджер компоновки GridLayout: особливості використання
- •Лабораторна робота №26 Обробка подій, пов’язаних з клавіатурою
- •Лабораторна робота №27 Робота з файлами даних
- •Лабораторна робота №28 Текстові поля
- •Лабораторна робота №29 Прапорці. Перемикачі. Комбіновані списки
- •Лабораторна робота №30 Java-аплети
- •Лабораторна робота №31 Реалізація меню в обрамляючих|обрамувати| вікнах
- •Лабораторна робота №32 Розробка застосувань користувача з використанням засобів візуального програмування NetBeans
Лабораторна робота №11 Спадкування
Мета роботи: отримання практичних навичок програмування задач з використанням спадкування.
Завдання: Розробити програму, в якій використовуються два класи. Клас Goods, який описаний в лабораторній роботі №10 и клас Goods_of_sale, який є підкласом класу Goods. Він повинен мати наступні об’єктні змінні:
date – дата виготовлення товара;
price_r – ціна товара в роздріб;
guaranty – строк гарантії.
і методи:
для виведення значень об’єктних змінних;
для зміни роздрібної ціни за товар;
для розрахунку прибутку.
Продемонструвати сумісність об’єктів в ієрархії спадкування і механізм поліморфізма.
Вигляд екрана працюючого додатку може бути такий:
Контрольні запитання:
У чому полягає суть спадкування?
Якими засобами можна управляти доступом до членів класу при спадкуванні?
Поясніть призначення ключового слова super.
Що розуміють під сумісністю об’єктів при спадкуванні?
В якому порядку викликаються конструктори при спадкуванні?
Поясніть суть динамічного зв’язування.
Лабораторна робота №12 Спадкування. Поліморфізм
Мета роботи: отримання практичних навичок програмування задач з використанням спадкування і механізму поліморфізма.
Завдання: Туристична фірма, заснована в року Y, організує подорож в N країн. Про кожну країну зберігається інформація:
назва;
максимальна й мінімальна вартість подорожі.
Використовуючі наявні дані потрібно сформувати рекламне повідомлення.
Рекомендації до виконання:
Очевидно, що в різних фірмах в основу реклами можуть бути покладені різні дані:
якщо фірма давно працює на ринку туристичних послуг, то вона може рекламувати свою надійність;
інша фірма, що забезпечує поїздки у велику кількість країн, в основу своєї реклами може покласти саме цей факт;
фірма, що надає послуги в широкому діапазоні цін, саме цим бажає залучити клієнтів з різною платоспроможністю.
Тому має сенс створити в суперкласі метод-заготівку, що буде перекриватися в підкласах.
Для введення даних можна скористатися новим способом уведення даних за допомогою діалогового вікна, що дозволить прийняти від користувача досить великий обсяг даних.
Діалогове вікно створюється при виклику методу JOptionPane.showInputDialog(inquery), у якому аргумент – це рядок запиту. Користувач має можливість набрати деякий текст у вікні редагування, що при клацанні на кнопці ОК повертається методом у вигляді строкового значення.
Якщо програма викликає метод JOptionPane.showInputDialog(), вона має завершити свою роботу викликом методу System.exit(0). Це визначається тим, що при виводі діалогового вікна запускається новий потік керування. Завершення роботи методу main() не припиняє роботи нового потоку керування автоматично. Виклик System.exit(0) закриває всі потоки.
Вигляд екрана працюючого додатку може бути такий:
Контрольні запитання:
У чому полягає суть спадкування?
Якими засобами можна управляти доступом до членів класу при спадкуванні?
Поясніть призначення ключового слова super.
Що розуміють під сумісністю об’єктів при спадкуванні?
В якому порядку викликаються конструктори при спадкуванні?
Поясніть суть динамічного зв’язування.
Яким чином можна використовувати діалогове вікно JOptionPane.showInputDialog() для введення даних?
