ID: 3056 OOP - Zaawansowane Łatwe

Źródło: Arkusze CKE

Co zostanie wyświetlone po wykonaniu poniższego kodu?
class Animal {
constructor(name) {
this.name = name;
}
speak() {
return ${this.name} makes a noise.;
}
}

class Dog extends Animal {
speak() {
return ${this.name} barks.;
}
}

let dog = new Dog('Rex');
console.log(dog.speak());

Warianty odpowiedzi

  1. A

    Rex barks.

  2. B

    Error: speak is not defined

  3. C

    undefined

  4. D

    Rex makes a noise.

Wyjaśnienie

W podanym kodzie klasa Dog dziedziczy po klasie Animal i nadpisuje (przesłania) jej metodę speak().

Tworzymy instancję klasy Dog z argumentem 'Rex'.

Gdy wywołujemy metodę dog.speak(), uruchamia się wersja zdefiniowana w klasie Dog. Zwraca ona napis "Rex barks.", który zostaje wypisany w konsoli.

Sprawdź się w praktyce

Rozwiąż pełny test próbny INF.04 albo wylosuj pojedyncze pytanie na szybką powtórkę.

Podobne pytania — OOP - Zaawansowane