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

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

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

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

Звіт до лабораторної роботи №5 з дисципліни «Кросплатформні засоби програмування»: Виключення

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

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
КН
Кафедра:
Кафедра електронних обчислювальних машин

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

Рік:
2018
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Кросплатформенні засоби програмування
Група:
КІ 43
Коротко про документ

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

У звіті до лабораторної роботи №5 розглянуто механізм виключень у мові програмування Java та ієрархію класів виключень. Наведено практичну реалізацію класу для обчислення математичного виразу з обробкою винятків та генерацією документації.

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

  • Обробка виключень у Java
  • Ієрархія класів Throwable, Error та Exception
  • Створення власних класів виключень
  • Обробка арифметичних помилок
  • Запис результатів виконання програми у файл
  • Автоматична генерація документації коду

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

  1. Мета роботи
  2. Теоретичні відомості
  3. Ієрархія класів виключень
  4. Створення власних класів виключень
  5. Хід роботи
  6. Завдання
  7. Код програми
  8. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів, що вивчають об'єктно-орієнтоване програмування та мову Java.
Викладачі:Миц А. М.

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

виключенняJavaThrowableExceptionErrorRuntimeRuntimeExceptiontry-catchфайловий ввід-вивідклас Calculationклас Driver

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

Міністерство освіти і науки України Національний університет “Львівська політехніка” Кафедра ЕОМ / Звіт З лабораторної роботи №5 З дисципліни: «Кросплатформні засоби програмування» На тему: «Виключення» Львів 2018 Мета роботи: Оволодіти навиками використання механізму виключень при написанні програм мовою Java. ТЕОРЕТИЧНІ ВІДОМОСТІ Виключення – це механізм мови Java, що забезпечує негайну передачу керування блоку коду опрацювання критичних помилок при їх виникненні уникаючи процесу розкручування стеку. Генерація виключень застосовується при: помилках введення, наприклад, при введенні назви неіснуючого файлу або Інтернет адреси з подальшим зверненням до цих ресурсів, що призводить до генерації помилки системним програмним забезпеченням; збоях обладнання; помилках, що пов’язані з фізичними обмеженнями комп’ютерної системи, наприклад, при заповненні оперативної пам’яті або жорсткого диску; помилках програмування, наприклад, при некоректній роботі методу, читанні елементів порожнього стеку, виходу за межі масиву тощо. Ієрархія класів виключень Всі виключення в мові Java поділяються на контрольовані і неконтрольовані та спадкуються від суперкласу Throwable. Безпосередньо від цього суперкласу спадкуються 2 класи Error і Exception. Ієрархія класів, що спадкує клас Error, описує внутрішні помилки і ситуації, що пов’язані з браком ресурсів у системі підтримки виконання програм. Жоден об’єкт цього типу самостійно згенерувати неможна. При виникненні внутрішньої помилки можна лише відобразити повідомлення користувачу та спробувати коректно завершити виконання програми. Такі помилки є нечастими. Ієрархія класів, що спадкує клас Exception поділяється на клас RuntimeException та інші. Виключення типу RuntimeException виникають внаслідок помилок програмування. Всі інші помилки є наслідком непередбачених подій, що виникають під час виконання коректної програми, наприклад, помилок вводу/виводу. Класи, що спадкуються від Error та RuntimeException, відносяться до неконтрольованих виключень. Всі інші класи відносяться до контрольованих виключень. Лише контрольовані виключення можуть бути згенеровані програмістом у коді програми явно за допомогою ключового слова throw. Для всіх контрольованих виключень компілятор перевіряє наявність відповідних обробників. Створення власних класів виключень Як правило, власні класи контрольованих виключень використовуються для конкретизації виключних ситуацій, що генеруються стандартними класами контрольованих виключень, з метою їх точнішого опрацювання. Для створення власного класу контрольованих виключень необхідно обов’язково успадкувати один з існуючих класів контрольованих виключень та розширити його новою функціональністю. Найчастіше власні класи оснащують конструктором по замовчуванню та конструктором, що приймає детальний опис ситуації, яка призвела до генерації виключення. Для відображення опису помилкової ситуації можна використати метод toString() класу Throwable. Для цього необхідно викликати відповідний конструктор класу, що розширяється. Після цього створений клас можна застосовувати для генерації виключень. Приклад власного класу виключень: class FileFormatException extends IOException { public FileFormatException() {} public FileFormatException(String message) { /* Даний виклик конструктора суперкласу дозволяє використовувати метод toString() класу Throwable */ super(message); } } Хід роботи: Завдання: 1) Створити клас, що реалізує метод обчислення виразу заданого варіантом. Написати на мові Java та налагодити програму-драйвер для розробленого класу. Результат обчислень записати у файл. При написанні програми застосувати механізм виключень для виправлення помилкових ситуацій, що можуть виникнути в процесі виконання програми. Програма має розміщуватися в пакеті Група.Прізвище.Lab5 та володіти коментарями, які дозволять автоматично згенерувати документацію до розробленого пакету.2. Автоматично згенерувати документацію до розробленого пакету. Варіант: 7) y=ctg(x)/sin(7x-1) Код програми: Класс Calculation package KI43.Husak.Lab5; public class Calculation { public double calc(double x) { double y=0; try { y = (1/Math.tan(x))/(Math.sin(7*x-1)); if (y==Double.NaN || y==Double.NEGATIVE_INFINITY || y==Double.POSITIVE_INFINITY) throw new ArithmeticException(); }catch(ArithmeticException ex) {System.out.println("Error: " + ex);} return y; } } Класс Driver package KI43.Husak.Lab5; import java.io.*; import java.util.Scanner; public class Driver { public static void main(String[] args) { try { PrintWriter fout = new PrintWriter(new File("logs5.txt")); Scanner sc = new Scanner(System.in); System.out.println("Enter x:"); double x = sc.nextDouble(); Calculation calculation = new Calculation(); double y = calculation.calc(x); System.out.println("Result: " + y); }catch(FileNotFoundException fnfe) { System.out.println("Exception reason: Perhaps wrong file path"); }catch(IOException ex) { System.out.println("Error: " + ex); } } } / Рис. 1 Результат роботи програми / Рис. 2 Результат роботи програми, записаний у файл / Рис. 3 Документація до классу Driver, згенерована автоматично, з допомогою спеціальних коментарів / Рис. 4 Документація до классу Calculation, згенерована автоматично, з допомогою спеціальних коментарів Висновок: Під час виконання даної лабораторної роботи я оволодів навиками використання механізму виключень при написанні програм мовою Java.
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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