Этот проект — простой пример реализации основных принципов объектно-ориентированного программирования (ООП) в Java.
В качестве примера используются домашние питомцы: кот и собака.
Проект демонстрирует:
- Наследование (
extends) - Интерфейсы и абстракцию (
implements) - Инкапсуляцию (скрытые поля + геттеры)
- Полиморфизм (разные реализации одних и тех же методов)
src/
├── Main.java # Точка входа в программу
└── pets/
├── Animal.java # Базовый класс (общая логика для всех животных)
├── PetActions.java # Интерфейс (договор: что должны уметь все питомцы)
├── Cat.java # Класс "Кот" (наследует Animal, реализует PetActions)
└── Dog.java # Класс "Собака" (наследует Animal, реализует PetActions)Базовый класс, содержит общую для всех питомцев логику:
eat()— питомец кушаетsleep()— питомец спит
Интерфейс, задающий "договор" для питомцев:
getName()— получить имяgetAge()— получить возрастmakeSound()— издать звукplay()— поиграть
Классы-наследники, которые:
- берут общие методы от
Animal(например,eat()) - реализуют обязательные методы из
PetActions - добавляют свои уникальные реализации (
Мяу-мяу!,Гав-гав!)
- Склонировать проект или создать в IDEA структуру вручную.
- Запустить ▶
Main.java.
Пример вывода:
=== Кот (наследование + интерфейс) ===
Имя: Барсик
Возраст: 3
Я кушаю
Мяу-мяу!
Барсик играет с клубком
=== Собака (наследование + интерфейс) ===
Имя: Шарик
Возраст: 5
Я кушаю
Гав-гав!
Шарик приносит палку- Наследование →
CatиDogнаследуютAnimal - Интерфейсы / Абстракция → оба реализуют
PetActions - Инкапсуляция → поля
nameиageприватные, доступ через геттеры - Полиморфизм →
makeSound()у кота и собаки разный, но вызывается одинаково
- Понять, как работают базовые принципы ООП в Java
- Научиться правильно использовать
extendsиimplements - Закрепить работу с классами, интерфейсами и методами
- Добавить больше питомцев (например,
Parrot,Hamster) - Реализовать несколько интерфейсов (например,
Trainable,Friendly) - Сделать коллекцию питомцев и пройтись по ним циклом