Какова функция ключевого слова 'extends' в Java?

Использование ключевого слова 'extends' в Java

В Java, ключевое слово 'extends' играет важную роль в наследовании. Оно используется для обозначения, что один класс наследуется от другого класса. В результате, подкласс (или дочерний класс) получает доступ к всем открытым и защищённым полям и методам суперкласса (или родительского класса).

Официальное определение в файле JSON гласит: "Для наследования свойств и методов от суперкласса". Это правильный ответ на вопрос: "Какова функция ключевого слова 'extends' в Java?".

Пример использования

public class Animal {
    String color;

    void eat() {
        System.out.println("Eating...");
    }
}

public class Cat extends Animal {
    void meow() {
        System.out.println("Meowing...");
    }
}

public class TestCat {
    public static void main(String args[]) {
        Cat c = new Cat();
        c.eat(); // вызывается метод из класса Animal
        c.meow();
        System.out.println(c.color); // доступ к полю из класса Animal
    }
}

В этом примере класс Cat наследует класс Animal с помощью ключевого слова 'extends'. Значит, у экземпляра класса Cat есть доступ к методу eat() и полю color из суперкласса Animal.

Дополнительные заметки

Несмотря на то, что наследование является мощным инструментом, важно помнить про понятие инкапсуляции и следовать принципам SOLID для реализации чистого и легко поддерживаемого кода. В частности, принцип подстановки Барбары Лисков указывает, что объекты в программе должны быть заменяемыми на объекты их подтипов без изменения правильности выполнения программы. То есть, при использовании 'extends' всегда важно убедиться, что подкласс действительно "является" экземпляром суперкласса в рамках бизнес-логики приложения.

Related Questions

Считаете ли это полезным?