Вебинары Разобраться в IT Реферальная программа
Программирование Аналитика Дизайн Маркетинг Управление проектами
10 Июл 2023
3 мин
4927

Различия между implements и extends в Java

Основное различие между ключевыми словами implements и extends в Java заключается в том, что они используются для наследования различных типов сущностей. Использование

Основное различие между ключевыми словами implements и extends в Java заключается в том, что они используются для наследования различных типов сущностей.

Разработка на Java — востребованное направление, такие специалисты будут нужны на рынке еще долго. На курсе «Java-разработчик» от Skypro освоить профессию можно с нуля за 11 месяцев, даже если вы гуманитарий и ничего не знаете об IT. Программа составлена от простого к сложному и адаптирована для новичков. Преподаватели — практикующие специалисты из крупных компаний: «Сбер», «Самокат» и других.

Использование extends

Ключевое слово extends используется в Java для наследования класса. Это означает, что новый класс создается на основе существующего класса, унаследовав его свойства и методы.

Пример:

public class Animal {
    public void eat() {
        System.out.println("Animal eats");
    }
}

public class Dog extends Animal {
    public void bark() {
        System.out.println("Dog barks");
    }
}

В этом примере класс Dog расширяет класс Animal, тем самым унаследовав метод eat() от класса Animal. Теперь у экземпляра класса Dog есть доступ и к методу eat(), и к методу bark().

Использование implements

Ключевое слово implements используется для реализации интерфейса. Интерфейс в Java — это шаблон, который может содержать только абстрактные методы и константы.

Пример:

interface Playable {
    void play();
}

public class Dog implements Playable {
    public void play() {
        System.out.println("Dog plays");
    }
}

Здесь класс Dog реализует интерфейс Playable, обязуясь предоставить реализацию для всех методов, объявленных в интерфейсе. В данном случае, класс Dog предоставляет реализацию для метода play().

Когда использовать что?

extends используется, когда есть четкое отношение «является» между классами. Например, «Собака» является «Животным», поэтому класс Dog может расширить класс Animal.

implements используется, когда класс должен предоставить определенное поведение, описанное в интерфейсе. Если «Собака» может «играть», то класс Dog может реализовать интерфейс Playable.

Важно помнить, что класс может расширить только один другой класс, но может реализовывать несколько интерфейсов. Это обусловлено тем, что Java не поддерживает множественное наследование классов, но поддерживает множественную реализацию интерфейсов.

Освойте Java на курсе онлайн-университета Skypro. Учебе нужно будет уделять всего 10 часов в неделю: сможете совмещать с работой и личными делами. Вас ждут 440 часов теории и практики, мастер-классы с реальными рабочими задачами, опытные преподаватели, кураторы и наставники. За время обучения сделаете два полноценных проекта для портфолио и множество домашних заданий, чтобы отработать навыки.

Вывод

Различие между implements и extends в Java довольно простое: extends используется для наследования класса, а implements — для реализации интерфейса. Отношения между классами и интерфейсами определяют, когда использовать что.

Добавить комментарий