@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, который он расширил.