objectgeoriënteerd ontwerp in C++ met Kristoffer Hebert
wat zijn inkapseling, overerving en polymorfisme?
encapsulatie
een klasse in objectgeoriënteerd ontwerp is een container voor gegevens en methoden. Klassen gebruiken inkapseling om de toegang tot attributen, zoals methoden en gegevens, in zichzelf te beheren. In de C++ taal wordt inkapseling in klassen bereikt met attributen zoals: publiek, privé, beschermd en statisch. Publieke Klasse attributen zijn overal toegankelijk. Private Class attributen zijn alleen toegankelijk voor Class methoden in zichzelf. Beschermde attributen zijn toegankelijk voor zichzelf en Kindklassen van zichzelf. Statische attributen zijn alleen beschikbaar voor de bovenliggende klasse, maar niet voor Class constructed object.
overerving
overerving in objectgeoriënteerd ontwerp beschrijft de relatie tussen Ouderklassen wanneer ze Dochterklassen uitbreiden. Extend betekent dat een klasse attributen van een andere klasse overschrijft of attributen van een andere klasse erft. In het voorbeeld van de gegeven code kunt u zien dat de onderliggende Klasse elk kenmerk van de bovenliggende klasse erft. De Dochterklasse overschrijft de voornaam in de aanroep van de constructor. Zo kom je aan de namen, Tom Sawyer en Suzy Sawyer.
Klasse overerving code voorbeeld
polymorfisme
polymorfisme beschrijft de één tot vele klassenrelatie in objectgeoriënteerd ontwerp. Een ouderklasse kan meerdere dochterklassen hebben die eigenschappen overnemen en overschrijven. De Transportklasse heeft twee klassen die het uitbreiden, vliegtuig en zeilboot, overschrijven het beschermde attributen en showDetails methode.
sleutels om
klassen te onthouden zijn containers met attributen, data en methode genoemd. Klassen gebruiken inkapseling om toegang tot deze attributen te beheren. In C++ kunnen Class attributen worden beheerd via private, statische, publieke, beschermde Class attribuut modifiers. Klassen erven de attributen van de klassen die ze uitbreiden. Bovendien kunnen klassen attributen overschrijven van de klassen die zij uitbreiden. Ouderklassen kunnen meerdere kinderklassen hebben.