DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Лабораторна робота № 5 з дисципліни «Програмування на мові Java»

Інформація про навчальний заклад

ВУЗ:
Національний технічний університет України Київський політехнічний інститут
Інститут:
ООП
Факультет:
Педагогічний
Кафедра:
Не вказано

Інформація про роботу

Рік:
2022
Тип роботи:
Лабораторна робота
Предмет:
Програмування
Група:
АР-31
Коротко про документ

Про що ця робота

У лабораторній роботі реалізовано консольний додаток на мові Java із застосуванням патерну проєктування «Абстрактна фабрика». Наведено код інтерфейсів та класів для створення об'єктів фігур різних кольорів.

У роботі розглядаються

  • Програмування на мові Java
  • Успадкування
  • Поліморфізм
  • Патерни проєктування
  • Абстрактна фабрика
  • Об'єктно-орієнтоване програмування

Зміст і розділи

  1. Тема та мета
  2. Завдання
  3. Виконання роботи
  4. Інтерфейс AbstractFactory
  5. Класи WhiteFactory та BlackFactory
  6. Клас Main
Для кого:Студенти технічних спеціальностей, вивчаючі програмування на мові Java
Викладачі:Викладач кафедри

Ключові поняття

JavaАбстрактна фабрикаПатерн проєктуванняУспадкуванняПоліморфізмІнтерфейсКласКонсольний додаток

Частина тексту файла (без зображень, графіків і формул):

Національний технічний університет України «Київський політехнічний інститут імені Ігоря Сікорського» Навчально-науковий інститут атомної та теплової енергетики Кафедра цифрових технологій в енергетиці ЛАБОРАТОРНА РОБОТА №5 з дисципліни «Програмування на мові Java» Варіант № 9 Тема: Успадкування та поліморфізм Мета: Розробити консольний додаток.. Завдання: Розробити консольний додаток, що реалізував би патерн проектування «Абстрактна фабрика», відповідно до наведеної діаграми класів. В ієрархію класів обов’язково включити методи з виведення результатів, за допомогою яких здійснюватиметься демонстрація результату генерації об’єктів. / Виконання роботи: Створюємо консольний додаток, та створюємо необхідні класи. / Наступним кроком прописуємо всі необхідні залежності, та описуємо методи класів: Інтерфейс «AbstractFactory» : package lr5; public interface AbstractFactory { public void CreateCircle(); public void CreateTriangle(); } Далі створюємо класи, які будуть реалізовуватися від «AbstractFactory». Клас «WhiteFactory» : package lr5; public class WhiteFactory implements AbstractFactory { public WhiteFactory() { System.out.println("WhiteFactory is created"); } @Override public void CreateCircle() { Circle circle = new WhiteCircle(); circle.show(); } @Override public void CreateTriangle() { Triangle triangle = new WhiteTriangle(); triangle.show(); } Клас «BlackFactory» : package lr5; public class BlackFactory implements AbstractFactory{ public BlackFactory() { System.out.println("BlackFactory is created"); } @Override public void CreateCircle() { Circle circle = new BlackCircle(); circle.show(); } @Override public void CreateTriangle() { Triangle triangle = new BlackTriangle(); triangle.show(); } } Інтерфейс «Circle» : package lr5; public interface Circle { public void show(); } Далі створюємо класи, які будуть реалізовуватися від «Circle». Клас «BlackCircle» : package lr5; public class BlackCircle implements Circle{ @Override public void show() { System.out.println("This is BlackCircle"); } } Клас «WhiteCircle» : package lr5; public class WhiteCircle implements Circle { @Override public void show() { System.out.println("This is WhiteCircle"); } } Абстрактний клас «Triangle» : package lr5; public interface Triangle { public void show(); } Далі створюємо класи, які будуть реалізовуватися від «Triangle». Клас «BlackTriangle» : package lr5; public class BlackTriangle implements Triangle{ @Override public void show() { System.out.println("This is BlackTriangle"); } } Клас «WhiteTriangle» : package lr5; public class WhiteTriangle implements Triangle { @Override public void show() { System.out.println("This is WhiteTriangle"); } } Створюємо наступний клас для створення екземплярів класів «Сircle» та «Triangle» відповідної фабрики. Клас «Client» : package lr5; public class Client { public Client(AbstractFactory abstractFactory) { abstractFactory.CreateCircle(); abstractFactory.CreateTriangle(); } } Наступним кроком реалізовуємо функціонал введення кольору та створення екземплярів класу «AbstractFactory» та «Client». «Main»: package lr5; import java.util.Scanner; public class Main { public static Client createFigures(String color) { AbstractFactory abstractFactory; switch (color.toLowerCase()) { case "white": abstractFactory = new WhiteFactory(); break; case "black": abstractFactory = new BlackFactory(); break; default: return null; } return new Client(abstractFactory); } public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.print("Enter color:"); String color = sc.nextLine(); Client client = createFigures(color); } } Результати: / / Висновок: Під час виконання лабораторної роботи, було набуто навички з розробки консольної додатку, що реалізував би патерн проектування «Абстрактна фабрика», відповідно до наведеної діаграми класів.
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!