Разлика между приложения и разширения

Разлика между приложения и разширения
Разлика между приложения и разширения

Видео: Разлика между приложения и разширения

Видео: Разлика между приложения и разширения
Видео: Полезные Расширения Гугл Хром #11▶️ Лучшие Приложения для Google Chrome Браузера 2024, Ноември
Anonim

Прилага срещу разширява

Implements и Extends са две ключови думи, намерени в езика за програмиране Java, който предоставя средство за прехвърляне на добавена функционалност към нов клас. Ключовата дума Implements се използва изрично за внедряване на интерфейс, докато ключовата дума Extends се използва за наследяване от (супер) клас. Моля, имайте предвид, че концепциите за наследяване и интерфейси присъстват в повечето други обектно-ориентирани езици за програмиране като C # и VB. NET, но те предлагат различен синтаксис или ключови думи за прилагане на тези концепции. Тази статия се фокусира само върху Внедрява и разширява ключови думи, дефинирани в Java.

Удължава

Ключовата дума extends се използва за реализиране на концепцията за наследяване в програмния език Java. Наследството по същество осигурява повторно използване на код, като позволява разширяване на свойствата и поведението на съществуващ клас от новодефиниран клас. Когато нов подклас (или производен клас) разширява супер клас (или родителски клас), този подклас ще наследи всички атрибути и методи на супер класа. Подкласът може по избор да замени поведението (предоставя нова или разширена функционалност на методи), наследено от родителския клас. Един подклас не може да разшири множество супер класове в Java. Следователно не можете да използвате удължения за многократно наследяване. За да имате множествено наследяване, трябва да използвате интерфейси, както е обяснено по-долу.

Приложения

Ключовата дума Implements в програмния език Java се използва за внедряване на интерфейс от клас. Интерфейсът в Java е абстрактен тип, който се използва за определяне на договор, който трябва да бъде изпълнен от класове, които прилагат този интерфейс. Обикновено интерфейсът ще съдържа само подписи на методи и константни декларации. Всеки интерфейс, който реализира определен интерфейс, трябва да реализира всички методи, дефинирани в интерфейса, или трябва да бъде деклариран като абстрактен клас. В Java типът на препратка към обект може да бъде дефиниран като тип интерфейс. Но този обект трябва да е нула или да съдържа обект от клас, който реализира този конкретен интерфейс. Използвайки ключова дума Implements в Java, можете да внедрите множество интерфейси в един клас. Интерфейсът не може да реализира друг интерфейс. Интерфейсът обаче може да разшири клас.

Разлика между приложения и разширения

Въпреки че Implements и Extends са две ключови думи, които осигуряват механизъм за наследяване на атрибути и поведение на клас в програмен език Java, те се използват за две различни цели. Ключовата дума Implements се използва за клас за реализиране на определен интерфейс, докато ключовата дума Extends се използва за подклас, който се разширява от супер клас. Когато клас реализира интерфейс, този клас трябва да внедри всички методи, дефинирани в интерфейса, но когато подклас разширява супер клас, той може или не може да замени методите, включени в родителския клас. И накрая, друга ключова разлика между Implements и Extends е, че клас може да реализира множество интерфейси, но може да се простира само от един супер клас в Java. Като цяло, използването на приложения (интерфейси) се счита за по-благоприятно в сравнение с използването на разширения (наследяване),поради няколко причини като по-висока гъвкавост и способността да се минимизира свързването. Следователно на практика програмирането към интерфейс е за предпочитане пред разширяването от базовите класове.

Препоръчано: