Raku kurss / Pielikums 🆕 / Tipi un teksta mašīnas / Objekti un klases / Exercises

Figūras ar kopīgu lomu

Uzdevums

Definējiet lomu Shape, kas prasa metodi area, un tad izveidojiet klases Circle un Square, kas pilda šo lomu.

Uzrakstiet apakšprogrammu describe, kuras parametrs ir tipizētsShape, lai tā pieņemtu jebkuru figūru un atteiktu visu, kas tāda nav. Tai jāizdrukā figūras laukums, apzīmēts ar tās klases nosaukumu. Izsauciet to riņķim ar rādiusu 2 un kvadrātam ar malu 3.

Apakšprogramma nekad nepārbauda, kāda veida figūru tā saņēmusi: tā kā tās parametrs ir Shape, objektam noteikti ir metode area, tāpēc viens un tas pats .area izsaukums darbojas ar jebkuru ienākošo figūru. Tieši to loma jums dod — vienu tipu, ko var pieprasīt, un vienu koda gabalu, kas ar katru šo lomu pildošu klasi apietas vienādi.

Piemērs

Programma izdrukā:

Circle: 12.56636
Square: 9

Risinājums

Skatīt risinājumu

Kursa navigācija

Risinājums: Bankas konts   |   Risinājums: Figūras ar kopīgu lomu