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

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

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

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

Звіт з лабораторної роботи: Класи та пакети

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

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

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

Рік:
2026
Тип роботи:
Лабораторна робота
Предмет:
Об’єктно-орієнтоване програмування
Група:
КІ-31
Коротко про документ

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

Звіт присвячено розробці класів та пакетів мовою Java на прикладі моделювання предметної області Кіт. У роботі реалізовано основні методи, конструктори, а також логування дій у файл.

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

  • Об'єктно-орієнтоване програмування
  • Мова програмування Java
  • Класи та пакети
  • Обробка винятків
  • Робота з файлами
  • Документування коду

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

  1. Мета та завдання
  2. Хід роботи
  3. Висновки
  4. Код програми
Для кого:Студенти технічних спеціальностей та викладачі програмування.
Викладачі:Не вказано

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

класпакетJavaметодлог-файлоб'єктінтерфейсреалізаціядокументація

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

Тема: Класи та пакети. Мета: ознайомитися з процесом розробки класів та пакетів мовою Java. Завдання: 1. Написати та налагодити програму на мові Java, що реалізує у вигляді класу предметну область згідно варіанту. Програма має задовольняти наступним вимогам: • програма має розміщуватися в пакеті Група.Прізвище.Lab3; • клас має містити мінімум 3 поля, що є об’єктами класів, які описують складові частини предметної області; • клас має містити кілька конструкторів та мінімум 10 методів; • для тестування і демонстрації роботи розробленого класу розробити клас-драйвер; • методи класу мають вести протокол своєї діяльності, що записується у файл; • розробити механізм коректного завершення роботи з файлом (не надіятися на метод finalize()); • програма має володіти коментарями, які дозволять автоматично згенерувати документацію до розробленого пакету. 2. Автоматично згенерувати документацію до розробленого пакету. 3. Скласти звіт про виконану роботу з приведенням тексту програми, результату її виконання та фрагменту згенерованої документації. 4. Дати відповідь на контрольні запитання. Варіант: 4. Кіт Хід роботи: Рис. 1 Результат виконання програми Рис. 1 Лог файл Висновки: В даній лабораторній роботі я ознайомився з процесом розробки класів та пакетів мовою Java. Код програми: Файл CatApp.java /** * lab 3 package */ package KI31.Hula.Lab3; import static java.lang.System.out; import java.io.*; /** * Pet Cat class implements main method for cat class possibilities demonstration * @author Hula Ostap * @version 1.0 */ public class CatApp { /** * @param args * @throws FileNotFoundException * @throws InterruptedException */ public static void main(String[] args) throws FileNotFoundException, InterruptedException { Cat cat = new Cat("Tom", new Tail(10), new Paw[] {new Paw(), new Paw(), new Paw(), new Paw()}); cat.setAge(2); cat.setColor("gray"); cat.setWeight(5); out.println(cat.toString()); cat.getHead().SayMeow(); cat.walk(2); cat.gnash(); cat.getTail().wave(); cat.dispose(); } } Файл Cat.java /** * lab 3 package */ package KI31.Hula.Lab3; import java.io.File; import java.io.FileNotFoundException; import java.io.PrintWriter; import java.util.concurrent.TimeUnit; /** * Class <code>Cat</code> implements a pet cat * @author [ім’я автора приховано] * @version 1.0 */ public class Cat { private Head head; private Paw[] paws; private Tail tail; private String name; private int age; private double weight; private String color; private PrintWriter fout; /** * Constructor * * @throws FileNotFoundException */ public Cat() throws FileNotFoundException { fout = new PrintWriter(new File("Log.txt")); } /** * Constructor * * @param <code>name</code> * @param <code>tail</code> * @param <code>paws</code> * @throws FileNotFoundException */ public Cat(String name, Tail tail, Paw[] paws) throws FileNotFoundException { this.head = new Head(); this.tail = tail; this.paws = paws; this.name = name; fout = new PrintWriter(new File("Log.txt")); } /** * Constructor with all parameters * * @param <code>name</code> * @param <code>age</code> * @param <code>weight</code> * @param <code>color</code> * @param <code>tail</code> * @param <code>head</code> * @param <code>paws</code> * @throws FileNotFoundException */ public Cat(Head head, Paw[] paws, Tail tail, String name, int age, double weight, String color) throws FileNotFoundException { super(); this.head = head; this.paws = paws; this.tail = tail; this.name = name; this.age = age; this.weight = weight; this.color = color; fout = new PrintWriter(new File("Log.txt")); } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public double getWeight() { return weight; } public void setWeight(double weight) { this.weight = weight; } public String getColor() { return color; } public void setColor(String color) { this.color = color; } public Head getHead() { return head; } public Paw[] getPaws() { return paws; } public Tail getTail() { return tail; } public PrintWriter getFout() { return fout; } /** * Method added paw to the cat * * @param <code>paw</code> * @return Cat's current count of paws */ public Paw[] addPaw(Paw paw) { Paw[] paws = new Paw[this.paws.length + 1]; paws = this.paws.clone(); paws[paws.length - 1] = paw; this.paws = paws.clone(); return this.paws; } /** * Method implements a cat's walking distance * * @param <code>distance</code> The distance that a cat has to go through */ public void walk(int distance) throws InterruptedException { fout.print("cat walked \n"); while(distance > 0) { for (int i = 0; i < paws.length; i++) { if((i % 2 == 0 && paws[i].getPosition() == Position.NEUTRAL) || paws[i].getPosition() == Position.DOWN) { paws[i].raisePaw(); System.out.println("Paw " + i + " " + paws[i].getPosition()); fout.print("Paw " + i + " " + paws[i].getPosition() + " \n"); } else { paws[i].lowerPaw(); System.out.println("Paw " + i + " " + paws[i].getPosition()); fout.print("Paw " + i + " " + paws[i].getPosition() + " \n"); } } TimeUnit.SECONDS.sleep(4); distance--; } fout.flush(); } /** * Method releases used recourses */ public void dispose() { fout.close(); } @Override public String toString() { return "Cat [name=" + name + ", age=" + age + ", weight=" + weight + ", color=" + color + "]"; } } Файл Head.java /** * lab 3 package */ package KI31.Hula.Lab3; /** * Class <code>Head</code> implements the cat's head * @author [ім’я автора приховано] * @version 1.0 */ public class Head { private Position position; /** * Constructor * */ public Head() { this.position = Position.NEUTRAL; } public void SetPosition(Position pos) { this.position = pos; } public Position GetPosition() { return this.position; } /** * Method implements cat`s Meow */ public void SayMeow() { System.out.println("meow meowww ..."); } } /** * lab 3 package */ package KI31.Hula.Lab3; /** * enum <code>Position</code> contains the direction of the cat's head * @author [ім’я автора приховано] * @version 1.0 */ public enum Position { NEUTRAL, UP, DOWN, LEFT, RIGHT } Файл Paw.java /** * lab 3 package */ package KI31.Hula.Lab3; /** * Class <code>Paw</code> implements the cat's paws * @author [ім’я автора приховано] * @version 1.0 */ public class Paw { private Position position; /** * Constructor * */ public Paw() { this.position = Position.NEUTRAL; } /** * Constructor * * @param <code>length</code> */ public Paw(int length) { this.position = Position.DOWN; } /** * Method implements cat`s gnash */ public void gnash() { System.out.println("kh...khhhh"); } /** * Method implements lower paw cat`s */ public void lowerPaw() { this.position = Position.DOWN; } /** * Method implements raise paw cat`s */ public void raisePaw() { this.position = Position.UP; } public Position getPosition() { return position; } } Файл Tail.java /** * lab 3 package */ package KI31.Hula.Lab3; /** * Class <code>Tail</code> implements the cat's tail * @author [ім’я автора приховано] * @version 1.0 */ public class Tail { private int length; /** * Constructor * * @param <code>length</code> */ public Tail(int length) { super(); this.length = length; } public int getLength() { return length; } public void setLength(int length) { this.length = length; } /** * Method implements cat`s waving */ public void wave() { System.out.println("waving!"); } }
Допоможи студентському архіву

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

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

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

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

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

Admin

26.02.2023 12:38

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