Лаб_2 / Лаб_2
.pdfМІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ ТРАНСПОРТНИЙ УНІВЕРСИТЕТ
Факультет транспортних та інформаційних технологій Кафедра інформаційних систем і технологій
Лабораторна робота№2
з дисципліни
«Об’єктно-орієнтовне програмування»
«Cтворення простих класів в Java»
Виконав ст. гр. КН-ІI-2
Юрчук О.С.
Перевірила
Міронова В.Л.
Київ 2013
Варіант 8
Завдання: Створіть на Java прості класи та продемонструйте їх функції.
Клас «квадратне рівняння»:
- квадратне рівняння задається трьома числами (a,b,c), які описують рівняння
a x2 + b x + c;
-існує метод для обчислення кількості коренів рівняння;
-існує метод для обчислення коренів, який повертає масив з одного або двох чисел або NULL.
Клас quard
import java.util.Scanner; class quard {
int a,b,c; double d,x1,x2; quard ()
{
Scanner sc =new Scanner(System.in); System.out.println("Введіть А: "); a=sc.nextInt(); System.out.println("Введіть B: "); b=sc.nextInt(); System.out.println("Введіть C: "); c=sc.nextInt();
}
void kolvo()
{
d =(b*b)-4*a*c; if (d<0)
System.out.println("Рівняння не має коренів!"); else if (d==0)
System.out.println("Рівняння має два однакові корені!"); else System.out.println("Рівняння має два різні корені!");
}
void zn()
{
d =(b*b)-4*a*c; x1=((-b)-Math.sqrt(d))/(2*a); x2=((-b)+Math.sqrt(d))/(2*a); if (d==0)
System.out.println("X1=X2="+x1); else if (d>0)
{
System.out.println("X1="+x1); System.out.println("X2="+x2);
}
else
System.out.println("NULL");
}
}
Клас Viev
import java.util.Scanner; public class Viev {
public static void main(String[] args) { Scanner sc =new Scanner(System.in); int diya;
quard KOL=new quard(); int k=1;
while (k==1)
{
System.out.println("Виберіть дію: 1 - кількість коренів, 2 - Обчислення коренів, 3 -
Вихід");
diya=sc.nextInt(); switch (diya) {
case 1: KOL.kolvo(); break; case 2: KOL.zn(); break; case 3: k=0; break; default:
}
}
}
}
Приклад роботи програми
Введіть А: 5 Введіть B: 12 Введіть C: 3
Виберіть дію: 1 - кількість коренів, 2 - Обчислення коренів, 3 - Вихід 1 Рівняння має два різні корені!
Виберіть дію: 1 - кількість коренів, 2 - Обчислення коренів, 3 - Вихід 2
X1=-2.1165151389911676
X2=-0.283484861008832
Виберіть дію: 1 - кількість коренів, 2 - Обчислення коренів, 3 - Вихід 3
Контрольні запитання
1.Назвіть основні принципи об’єктно-орієнтованого програмування
2.Що таке клас?
3.Спеціфікатори доступу у класі.
4.Що таке метод класу? Які існують методи класу?
5.Що таке конструктор класу? Види конструкторів?
6.Що таке об’єкт? Як створити об’єкт класу.
1.Клас,Об’єкт,Метод,Успадкування,Інкапсуляція,Абстрагування,Поліморфізм.
2.Клас-це множина об’єктів об’єднаних загальністю структури та поведінки. Ідея класу полягає в об’єднанні даних і алгоритмів їх опрацювання. Дані називають полями класу, алгоритми – методами, а власне об’єднання - інкапсуляцією.
3.Private,protected,public.
4.Метод – це певний алгоритм для виконання поставленої задачі, який прописується у класі. Методи є: конструктори, деструктори, селектори, модифікатори, ітератори.
5.Конструктор – це метод призначений для ініціалізації стану екземплярів класу при їх створенні. Конструктори є:
1)Конструктор ініціалізації –містить окремі значення, що використовуються для ініціалізації стану полів екземпляру класу. У списку параметрів такого списку може бути зазначено 0,1 чи більше параметрів будь-якого типу. Конструктор, що містить порожній список параметрів називається порожній конструктор (або за замовчуванням)
2)Конструктор копіювання – ініціалізує стан класу значення іншого екземпляру цього класу. В списку параметрів вказується єдиний параметр, що має тип «посилання на екземпляр класу».
6.Об’єкт класу – це інкапсульована абстракція, що включає в себе інформацію про стан та чітко визначену множину протоколу доступу.
[ім’я класу] [ім’я об’єкту]=new [ім’я класу]();