Kомпозиция и наследование - это два основных механизма, которые позволяют организовать отношения между классами в Java. Оба этих механизма позволяют создавать связи между классами и переиспользовать код, но они имеют разные принципы работы и применяются в разных ситуациях. Наследование - это механизм, который позволяет классу наследовать свойства и методы другого класса, называемого родительским классом или суперклассом. При использовании наследования, класс-наследник получает все свойства и методы родительского класса и может добавлять свои собственные свойства и методы. Наследование позволяет создавать иерархии классов и использовать полиморфизм. Пример использования наследования в Java: class Animal {
void eat() {
System.out.println("Animal is eating");
}
}
class Dog extends Animal {
void bark() {
System.out.println("Dog is barking");
}
}
public class Main {
public static void main(String[] args) {
Dog dog = new Dog();
dog.eat(