Одержати навики побудови алгоритмів лінійних обчислювальних процесів, навчитися складати алгоритми та програмувати процеси з розгалуженням, циклами, ітераційними циклами за допомогою мови Java. Одержати навички роботи із масивами.
ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
2.1. ОПЕРАТОРИ МОВИ JAVA
15.1. Модель обробки "поставщик-споживач"
Дуже часто зображення перед виведенням на екран підлягає обробці: змінюються кольори окремих пікселів або цілих частин зображення, виділяються і перетворюються якісь фрагменти зображення. В бібліотеці AWT застосовуються дві моделі обробки зображення. Одна модель реалізує давно відому в програмуванні спільну модель "поставщик-споживач" (Producer-Consumer). Згідно цієї моделі один обєкт, "поставщик", генерує сам або перетворює отриману із іншого місця продукцію, в даному випадку, набір пікселів, і передає іншим обєктам. Ці обєкти, "споживачі", приймають продукцію і теж перетворюють її при необхідності. Тільки після цього створюється обєкт класу Іmage і зображення виводиться на екран. У одного поставщика може бути декілька споживачів, котрі повинні бути зареєстровані поставщиком. Поставщик і споживач активно взаємодіють, звертаючись до методів один одного.
В AWT ця модель описана в двох інтерфейсах: ImageProducer і ImageConsumer пакета java. awt. image. Інтерфейс ImageProducer описує пять методів:
· startProduction (ImageConsumer ic) — реєструє споживача ic і починає поставку зображення всім зареєстрованим споживачам;
· requestTopDownLeftRightResend (ImageConsumer ic) — використовується споживаем для того, щоб затребувати зображення ще раз в порядку "зверху-вниз, зліва-направо" для методів обробки, застосовуючи саме такий порядок.
З кожним екземпляром класу Іmage звязаний обєкт, реалізуючий інтерфейс ImageProducer. Його можна отримати методом getSource() класу Image. Найпростіша реалізація интерфейса ImageProducer - клас MemoryІmageSource — створює пікселі в оперативній памяті по масиву байтів або цілих чисел. Спочатку створюється масив pix, що містить колір кожної точки. Потім одним із шести конструкторів створюється обєкт класу MemoryІmageSource. Він може бути оброблений споживачем або прямо перетворений у тип Image методом createlmage ().
В лістинзі 15.1 наведена проста программа, що виводить на екран квадрат розміром 100x100 пікселів. Лівий верхній кут квадрата синій, лівий нижній — червоний, правий верхній — зелений, а до центру квадрата кольори змішуються.