Що таке пресtracв Java? (з прикладом)
⚡ Розумний підсумок
Дані Абсtracв Java це об'єктно-орієнтована концепція, яка показує лише основні атрибути та приховує непотрібні деталі, зменшуючи складність за допомогою абсtracт-класи та пресtracметоди, хоча й відрізняються від інкапсуляції та підтримують багаторазові, зручні в обслуговуванні конструкції в багатьох застосуваннях.

Що таке пресtracв Java?
Abstracції – це концепція об’єктно-орієнтованого програмування, яка «показує» лише основні атрибути та «приховує» непотрібну інформацію. Головна мета abstracприховує непотрібні деталі від користувачів. АбсtracЦе полягає в виборі даних з більшого пулу, щоб показати користувачеві лише відповідні деталі об'єкта. Це допомагає зменшити складність програмування та зусилля. Це одна з найважливіших концепцій ООП.
Натисніть тут якщо відео недоступне
Давайте вивчати пресtracція в ООП з прикладом:
Припустімо, ви хочете створити банківську програму, і вас просять зібрати всю інформацію про вашого клієнта. Є ймовірність, що ви отримаєте наступну інформацію про клієнта

Але не вся наведена вище інформація потрібна для створення банківської програми. Отже, відбирати для себе потрібно лише корисну інформацію банківська програма з цього пулу. Такі дані, як ім'я, адреса, податкова інформація тощо, мають сенс для банківської програми, яка є Abstracприклад в ООП
Оскільки ми отримали/видалив/вибрали інформацію про клієнта з більшого пулу, цей процес називається Abs.tracв ООПОднак, та сама інформація, як тількиtracДані ted можна використовувати для широкого кола застосувань. Наприклад, ви можете використовувати ті самі дані для заявки в лікарні, заявки на портал вакансій, урядової бази даних тощо з незначними змінами або без них. Таким чином, вони стають вашими основними даними. Це перевага Abs.tracція в ООП.
Різниця між пресомtracція та інкапсуляція
| Abstracції | Інкапсуляція |
|---|---|
| Abstracція в об'єктно-орієнтованому програмуванні вирішує проблеми на рівні проектування. | Інкапсуляція вирішує це на рівні реалізації. |
| AbstracСуть у програмуванні полягає в приховуванні небажаних деталей, водночас показуючи найважливішу інформацію. | Інкапсуляція означає зв'язування коду та даних в єдине ціле. |
| Дані Абсtracв Java дозволяє зосередитися на тому, що повинен містити інформаційний об'єкт | Інкапсуляція означає приховування внутрішніх деталей або механізмів того, як об’єкт щось робить з міркувань безпеки. |
Різниця між пресомtracКлас та інтерфейс t
| AbstracКлас т | інтерфейс |
|---|---|
| Пресtract-клас може мати обидва пресиtracт та не абсtracт методи. | Інтерфейс може мати лише abstracт методи. |
| Він не підтримує множинне успадкування. | Він підтримує множинне успадкування. |
| Він може забезпечити реалізацію інтерфейсу. | Це не може забезпечити реалізацію пресуtracт-клас. |
| Пресtract-клас може мати захищений та абсtracпублічні методи. | Інтерфейс може мати лише публічний abstracт методи. |
| ПресtracКлас t може мати змінну final, static або static final з будь-яким специфікатором доступу. | Інтерфейс може мати лише загальнодоступну статичну кінцеву змінну. |
Що таке пресtracКлас?
ABSTRACТ-КЛАС є типом класу в Java, що декларують один або декілька абсtract методи. Ці класи можуть мати абсtract методи, а також конкретні методи. Звичайний клас не може мати abstracметоди. Абсtract-клас — це клас, який містить принаймні один абсtracметод t. Ми можемо зрозуміти цю концепцію за допомогою приклад форми в java.
Розглянемо наступну ієрархію класів, що складається з класу Shape, який успадковується трьома класами Rectangle, Circle і Triangle. Клас Shape створено для збереження загальних атрибутів і методів, спільних для трьох класів Rectangle, Circle і Triangle. CalculateArea() — це один із таких методів, спільний для всіх трьох дочірніх класів і присутній у класі Shape.
Тепер припустімо, що ви пишете код для створення об’єктів для класів, зображених вище. Давайте поспостерігаємо, як ці об'єкти виглядатимуть у практичному світі. Об’єкт класу rectangle надасть прямокутник, форму, яку ми так часто спостерігаємо у повсякденному житті.
Об’єкт класу трикутник дасть трикутник, знову ж таки звичайну повсякденну форму.
Але як би виглядав об’єкт Class Shape у практичному світі??
Якщо ви спостерігаєте, що клас Shape служить у наша мета досягнення спадкування і поліморфізм. Але він не був створений для створення екземпляра. Такі класи можна позначати AbstractПресtracНеможливо створити екземпляр класу Java.
Синтаксис:
abstract class Shape{ // code }
Можливо, ви НЕ позначаєте клас Shape як Abstract, а потім створити його екземпляр. Але такий об'єкт не матиме жодного значення у вашому коді та відкриє простір для потенційних помилок. Тому це небажано.
Що таке пресtracМетоди в Java?
ABSTRACТ-МЕТОД in Java, — це метод, який має лише визначення методу, але не містить реалізації. Метод без тіла називається Abs.tracМетод t. Його потрібно оголосити у форматі abstracт-клас. ПресtracМетод t ніколи не буде остаточним, оскільки абсtracКлас t повинен реалізувати всі абсtracт методи.
Як ми всі знаємо, формула для обчислення площі прямокутника, кола та трикутника відрізняється. Метод CalculateArea() має бути перевизначений класами-спадкоємцями. Немає сенсу визначати його в класі Shape, але нам потрібно переконатися, що всі класи-спадкоємці мають метод.
Такі методи можна позначити ABStract.
Синтаксис:
abstract public void calculateArea();
Для ABStract-метод, реалізація не потрібна. Визначається лише сигнатура методу.
Abstracції Code Приклад
abstract class Shape{ abstract void calculateArea(); } class guru99 extends Shape{ void calculateArea(){System.out.println("Area of Shape");} public static void main(String args[]){ Shape obj = new guru99(); obj.calculateArea(); } }
Переваги пресуtracції
- Основна перевага використання пресуtracв Програмування полягає в тому, що він дозволяє групувати кілька пов’язаних класів як братів і сестер.
- Abstracвання в об'єктно-орієнтованому програмуванні допомагає зменшити складність процесу проектування та впровадження програмного забезпечення.
Кінцеве ключове слово в Java
Останній модифікатор застосовується до класів, методів і змінних. Значення слова final варіюється від контексту до контексту, але основна ідея однакова.
- Останній клас не може бути успадкований
- Кінцева змінна стає константою, і її значення не можна змінити.
- Остаточний метод не можна перевизначити. Це робиться з міркувань безпеки, а ці методи використовуються для оптимізації.
Приклад :- Щоб навчитися м'язам пресуtracключові слова t та final
Крок 1) Скопіюйте наступний код у редактор.
abstract class Shape{ final int b = 20; public void display(){ System.out.println("This is display method"); } abstract public void calculateArea(); } public class Rectangle extends Shape{ public static void main(String args[]){ Rectangle obj = new Rectangle(); obj.display(); //obj.b=200; } //public void calculateArea(){} }
Крок 2) Збережіть, скомпілюйте та запустіть код.
Крок 3) Помилка =? ПресtracМетод t не реалізовано в класі Rectangle. Щоб виправити проблему, розкоментуйте рядок №15.
Крок 4) Розкоментуйте рядок № 13. Збережіть і скомпілюйте код.
Крок 5) Помилка = ? змінна b є кінцевою
Коли використовувати пресtracМетоди та пресtracКлас?
AbstracМетоди t здебільшого оголошуються там, де два або більше підкласів також виконують ту саму дію різними способами через різні реалізації. Він також розширює ті самі Abs.tract-клас і пропонує різні реалізації пресуtracт методи.
AbstracКласи t допомагають описувати загальні типи поведінки та ієрархію класів об'єктно-орієнтованого програмування. Вони також описують підкласи, щоб запропонувати деталі реалізації ABS.tracт-клас.




