...
Code Block |
---|
int main() { CKissa kissa; // Luodaan uusi olio CKissa-luokasta. CKoira koira; // Luodaan uusi olio CKoira-luokasta. CElain* elain; // Luodaan CELain-tyyppinen osoitin eli kantaluokan tyyppinen osoitin. elain = &kissa; // Pistetään CElain-tyyppinen osoitin osoittamaan olioon kissa. elain->Aantele(); // Kutsutaan CKissa-luokassa toteutettua Aantele()-metodia. elain = &koira; // Pistetään CElain-tyyppinen osoitin osoittamaan olioon koira. elain->Aantele(); // Kutsutaan CKoira-luokassa toteutettua Aantele()-metodia. }; |
Kuva 1. Esimerkki 1 UML-luokkakaaviona.
Esimerkissä luodaan oliot CKissa- sekä CKoira-luokista. Lisäksi luodaan CElain-tyyppinen osoitin. Tämän osoittimen kautta voidaan käsitellä kaikkia CElain-luokan esittelemiä (public ja protected) metodeja, kuten Aantele()-metodia. CElain-luokka toimii yhteisenä rajapintana CKissa ja CKoira -luokille.
Kuva 1. Esimerkki 1 UML-luokkakaaviona.