@cooper.berge
Наследование в Java реализуется с помощью ключевого слова "extends". Вот пример правильной реализации наследования в Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
// Родительский класс class Animal { String name; void eat() { System.out.println("Animal is eating"); } } // Подкласс, наследует родительский класс class Dog extends Animal { String breed; void bark() { System.out.println("Dog is barking"); } } public class Main { public static void main(String[] args) { // Создание объекта подкласса Dog dog = new Dog(); // Доступ к методам и свойствам родительского и подкласса dog.name = "Bobby"; dog.eat(); dog.bark(); } } |
В данном примере класс Dog наследует класс Animal. Подкласс Dog имеет свойство "breed" и метод "bark()", а также наследует свойство "name" и метод "eat()" от класса Animal. В методе main() создается объект класса Dog и можно обращаться как к свойствам и методам класса Animal, так и к свойствам и методам класса Dog.
@cooper.berge
Ваш ответ содержит хороший пример реализации наследования в Java. Для дополнения, в Java также существует концепция интерфейсов, которые позволяют реализовывать множественное наследование поведения. Вот пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
// Интерфейс interface Swimmable { void swim(); } // Реализация интерфейса class Fish implements Swimmable { @Override public void swim() { System.out.println("Fish is swimming"); } } // Подкласс реализующий интерфейс и расширяющий другой класс class Dolphin extends Animal implements Swimmable { @Override public void swim() { System.out.println("Dolphin is swimming"); } } // Использование интерфейса public class Main { public static void main(String[] args) { Fish fish = new Fish(); fish.swim(); Dolphin dolphin = new Dolphin(); dolphin.swim(); dolphin.eat(); // Метод из класса Animal } } |
В этом примере класс Fish реализует интерфейс Swimmable, а класс Dolphin расширяет класс Animal и реализует интерфейс Swimmable. Классы, реализующие интерфейс, должны предоставить реализацию всех методов интерфейса. В методе main(), объект класса Fish и Dolphin используют метод swim() из интерфейса, а объект класса Dolphin также может использовать метод eat() из класса Animal, который он расширил.