Sunday, September 29, 2019

Derived Classes and Base Classes

Derived Classes and Base Classes Mario Padilla IT/218 September 2, 2011 University of Phoenix/Axia College Derived Classes and Base Classes Considering that the ostrich is a flightless bird, it is reasonable to derive a class CHawk from CBird, but not a COstrich. This is mainly because the function fly () sets an altitude of 100 and, as everyone knows, the ostrich cannot fly. If we had to derive COstrich from CBird probably need to provide a function fly () to return 0, and this could break existing code, which sets the altitude to 100. This could be a derivation of a class avian; class CAvian { protected: int wingSpan; nt eggSize; }; class CFlyingBird : public CAvian { protected: int airSpeed; int altitude; public: virtual void fly() { altitude = 100; } }; class CFlightlessBird : public CAvian { // Arguments involving flightless birds }; class CHawk: public CFlyingBird { }; class COstrich : public CFlightlessBird { }; One of the main properties of the classes is inheritance. This pr operty allows us to create new classes from existing classes, retaining the properties of the original class and adding new ones. Each new class obtained through inheritance is known as derived class, and classes from which it derives are called base classes. In addition, each derived class can be used as a base class for a new derived class. And each derived class can be one or more base classes. In the latter case are referred to bypass manifold. This allows us to create a class hierarchy as complex as necessary. Well, but what are the advantages derived classes? Actually, that's the principle of object oriented programming. This property allows us to encapsulate different parts of any real or imaginary object, and links to objects made of the same basic type, will inherit all its features.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.