Skip to main content

Полиморфизъм (лесни)

🌟 Примерна Задача​

Инструкции​

Създайте клас Animal с поле name и метод makeSound(). Създайте клас Dog, който наследява Animal и переопределя метода makeSound() да отпечатва "Woof".

Примерен Код​

class Animal {
String name;

void makeSound() {
System.out.println("Animal Sound");
}
}

class Dog extends Animal {

@Override
void makeSound() {
System.out.println("Woof");
}
}

public class Main {
public static void main(String[] args) {
Animal myAnimal = new Animal();
Dog myDog = new Dog();

myAnimal.makeSound(); // Output: Animal Sound
myDog.makeSound(); // Output: Woof
}
}

📝 Допълнителни Задачи (Лесни)​

🚗 Задача 1​

Инструкции​

Създайте клас SimpleCar с поле speed. Добавете метод accelerate(), който увеличава скоростта с 10.

Примерен Изход​

Speed after accelerate: 10

🚗 Задача 2​

Инструкции​

Създайте клас FamilyCar, който наследява SimpleCar и добавя поле seats. Добавете метод addSeat(), който увеличава броя на седалките с 1.

Примерен Изход​

Seats after adding one: 5

🚗 Задача 3​

Инструкции​

Създайте интерфейс Honkable с метод honk(). Имплементирайте го в SimpleCar така, че да отпечатва "Honk!"

Примерен Изход​

Honk!

🚗 Задача 4​

Инструкции​

Създайте абстрактен клас Vehicle с метод move(). Нека SimpleCar наследява Vehicle.

Примерен Изход​

Vehicle is moving

🚗 Задача 5​

Инструкции​

Създайте клас Bicycle който също наследява Vehicle. Добавете метод pedal().

Примерен Изход​

Pedaling the bicycle

🚗 Задача 6​

Инструкции​

Създайте клас MainCars и създайте няколко обекта от тип SimpleCar и FamilyCar. Използвайте instanceof за да проверите типа на обектите.

Примерен Изход​

This is a SimpleCar
This is a FamilyCar

🕺 Задача 7​

Инструкции​

Създайте клас DanceMove с полета name и duration. Добавете метод perform().

Примерен Изход​

Performing the moonwalk for 5 seconds

🕺 Задача 8​

Инструкции​

Създайте клас BreakDanceMove, който наследява DanceMove и добавя поле complexity.

Примерен Изход​

Performing the windmill with complexity level 8

🕺 Задача 9​

Инструкции​

Създайте интерфейс Danceable с метод dance(). Имплементирайте го в DanceMove.

Примерен Изход​

Dancing the salsa

🕺 Задача 10​

Инструкции​

Създайте абстрактен клас Performance с метод start(). Нека DanceMove наследява Performance.

Примерен Изход​

Starting the performance

🕺 Задача 11​

Инструкции​

Създайте клас Song който също наследява Performance. Добавете метод sing().

Примерен Изход​

Singing 'Bohemian Rhapsody'

🕺 Задача 12​

Инструкции​

Създайте клас MainDance и създайте няколко обекта от тип DanceMove и BreakDanceMove. Използвайте instanceof за да проверите типа на обектите.

Примерен Изход​

This is a DanceMove
This is a BreakDanceMove

🕺 Задача 13​

Инструкции​

Създайте клас DJ с метод playSong(Song song). Добавете интерфейс Playable с метод play() и имплементирайте го в DJ.

Примерен Изход​

Playing 'Bohemian Rhapsody'

🕺 Задача 14​

Инструкции​

Създайте клас MainPerformance и създайте няколко обекта от тип DanceMove, BreakDanceMove и Song. Използвайте полиморфизъм за да ги стартирате.

Примерен Изход​

Starting the moonwalk
Starting the windmill
Starting 'Bohemian Rhapsody'

🕺 Задача 15​

Инструкции​

Създайте клас Party който има масив от Performance обекти. Добавете метод startParty() който стартира всички performances.

Примерен Изход​

Starting the moonwalk
Starting the windmill
Starting 'Bohemian Rhapsody'
Party started!