Різниця між пакетом та інтерфейсом на Java

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

Java - одна з найпопулярніших мов програмування. Основна перевага Java в тому, що вона підтримує об'єктно-орієнтоване програмування. Ця методологія дозволяє моделювати об'єкти реального світу в програмному забезпеченні. Клас - це креслення для створення об’єкта. Кожен об'єкт містить дані або поля для опису атрибутів або властивостей та методів опису поведінки. У цій статті розглядаються дві концепції, пов'язані з OOP на Java на Java, які є пакетом та інтерфейсом.

ЗМІСТ

1. Огляд та ключові відмінності
2. Що таке пакет в Java
3. Що таке інтерфейс у Java
4. Порівняльне порівняння - пакетний та інтерфейсний на Java у табличній формі
5. Підсумок

Що таке пакет в Java?

Java забезпечує велику кількість класів. Зберігати всі класи в одній папці може бути важко, оскільки до них важко отримати доступ. Це може вплинути на керованість програми. Java використовує пакети для організації занять. Це схоже на папку. Java API групує класи в різні пакети відповідно до функціональності. Тому кожен пакет містить відповідний набір класів.

Приклад пакетів на Java

Кілька прикладних пакетів такі. Пакет java.io містить класи введення, виведення. Він включає File, PrintStream, BufferInputStream тощо. Пакет java.net містить класи, пов'язані з мережею. Деякі приклади - URL, Socket, ServerSocket. Пакет java.awt містить усі класи, необхідні для створення графічних інтерфейсів користувача. Це кілька пакетів Java API.

Коли програміст хоче використовувати певний клас у програмі, він повинен імпортувати цей пакет. Якщо програміст хоче використовувати клас BufferInputStream в пакеті java.io, він повинен написати заяву про імпорт наступним чином.

імпорт java.util.BufferInoutStream;

Нижче у викладі буде імпортовано всі класи в пакеті util.

імпорт java.util. *;

Також можливо створити визначені користувачем пакети.

працівник пакету;

працівник публічного класу

Згідно з вищенаведеним прикладом, працівник - це назва пакету. Клас Співробітник - це частина пакету працівників. Цей файл зберігається як Employee.java до пакету працівників.

Крім того, є можливість імпорту публічного класу з одного пакету в інший. Зверніться до наступного прикладу.

Малюнок 01: Клас А

Малюнок 02: Клас В

Клас A знаходиться в пакеті 1, і він містить загальнодоступний метод, який називається display. Клас В знаходиться в упаковці 2, і він містить основний метод. Хоча вони знаходяться в окремих упаковках; клас B може створити об’єкт класу A шляхом імпорту пакета1. Після імпорту пакету 1 клас B отримує доступ до даних та методів класу A.

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

Що таке інтерфейс у Java?

Іноді програміст може не знати визначення методу. У таких ситуаціях програміст може оголосити лише метод. Абстрактний метод - це метод, який не має визначення. У ньому є лише декларація. Коли існує хоча б один абстрактний метод, цей клас стає абстрактним класом. Більше того, абстрактний клас може містити як абстрактні методи, так і не абстрактні методи. Програміст не може створювати об'єкти з абстрактних класів.

Коли клас поширює абстрактний клас, новий клас повинен визначити весь абстрактний метод у абстрактному класі. Іншими словами, припустимо, що абстрактний клас A має абстрактний метод, який називається display. Клас B поширює клас А. Тоді клас B повинен визначити відображення методу.

Приклад інтерфейсу на Java

Припустимо, що і А, і В - абстрактні класи. Якщо клас C поширює A і B, то клас C повинен визначати абстрактні методи обох класів. Це багаторазове успадкування. Java не підтримує багаторазове успадкування. Для його реалізації програміст повинен використовувати інтерфейси. Якщо A і B - інтерфейси, то клас C може їх реалізувати. Перегляньте наступний приклад.

Малюнок 03: Інтерфейс A

Малюнок 04: Інтерфейс B

Інтерфейс A має абстрактний метод display1, а інтерфейс B має абстрактний метод display2.

Малюнок 05: Клас С

Клас C реалізує інтерфейси A і B. Тому слід визначити обидва методи.

Малюнок 06: Основний метод

Тепер в основному методі можна створити об’єкт C і викликати обидва методи. Аналогічно, інтерфейси допомагають реалізувати множинне успадкування в Java.

Окрім багатократного успадкування, інтерфейси допомагають досягти абстракції. Це одна з основних концепцій ООП. Абстракція дозволяє приховати деталі реалізації та показати лише функціональність користувачеві. Далі це дозволяє зосередитись на тому, що робить об’єкт, а не на тому, як це робиться. Оскільки інтерфейс складається з абстрактних методів, він допомагає архівувати абстракцію.

Яка різниця між пакетом та інтерфейсом на Java?

Пакет - це група пов'язаних класів, які забезпечують захист доступу та управління простором імен. Інтерфейс - це еталонний тип, подібний класу, який представляє собою сукупність абстрактних методів. Пакет допомагає класифікувати класи методично для доступу до них та їх легкого обслуговування. З іншого боку, Інтерфейс допомагає реалізувати декілька спадків і досягти абстракції. У цьому головна відмінність пакета та інтерфейсу на Java. Далі спосіб написання пакета полягає в малих літерах, таких як java.util, java.awt. Якщо назва інтерфейсу - «Площа», воно записується в «Інтерфейс».

Підсумок - Пакет проти інтерфейсу на Java

Різниця між пакетом і інтерфейсом на Java полягає в тому, що Package допомагає класифікувати класи методично для доступу до них і їх легко підтримувати, в той час як інтерфейс допомагає реалізовувати декілька спадків і домогтися абстракції..

Довідка:

1. Навчальний бал. "Пакети Java". Підручник Точка, 24 березня 2018. Доступно тут 
2. Навчальний бал. «Інтерфейси Java». Підручник Точка, 24 березня 2018. Доступно тут