Kurso de Raku / Objektoj, en- kaj eligo kaj escepto / Klasoj kaj objektoj / Heredo / Exercises / Figuro kaj kvadrato

Solvo: Figuro kaj kvadrato

Jen ebla solvo de la tasko.

Kodo

class Shape {
    method name {
        'shape';
    }
    method describe {
        'I am a ' ~ self.name;
    }
}

class Square is Shape {
    method name {
        'square';
    }
}

say Square.new.describe;

🦋 Vi povas trovi la fontkodon en la dosiero shape-and-square.raku.

Eligo

I am a square

Komentoj

  1. Square heredas describe el Shape kaj superregas nur name.

  2. describe vokas self.name, kiu prenas la superregantan name, do la priskribo diras square anstataŭ shape.

Kursa navigado

Figuro kaj kvadrato   |   Heredita atributo