capitolul12 - CAPITOLUL 12 Crearea ierahiilor de clase...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
CAPITOLUL 12 Crearea ierahiilor de clase CREAREA IERARHIILOR DE CLASE 12.1. Mecanismul moştenirii 12.5. Moştenirea multiplă 12.2. Modul de declarare a claselor derivate 12.6. Redefinirea membrilor unei clase de bază 12.3. Constructorii claselor derivate în clasa derivată 12.4. Moştenirea simplă 12.7. Metode virtuale 12.1. MECANISMUL MOŞTENIRII Moştenirea este o caracteristică a limbajelor de programare orientate obiect, care permite refolosirea codului şi extinderea funcţionalităţii claselor existente (vezi capitolul 9). Mecanismul moştenirii permite crearea unei ierarhii de clase şi trecerea de la clasele generale la cele particulare. (Un concept poate fi implementat printr-o clasă). Această proprietate se manifestă prin faptul că din orice clasă putem deriva alte clase. Procesul implică la început definirea clasei de bază care stabileşte calităţile comune ale tuturor obiectelor ce vor deriva din bază (ierarhic superioară). Prin moştenire, un obiect poate prelua proprietăţile obiectelor din clasa de bază. Moştenirea poate fi: Unică (o clasă are doar o superclasă, rezultând o structură arborescentă); Multiplă (o clasă are mai multe superclase, rezultând o structură de reţea). Informaţia comună apare în clasa de bază, iar informaţia specifică - în clasa derivată. Clasa derivată reprezintă o specializare a clasei de bază. Orice clasă derivată moşteneşte datele membru şi metodele clasei de bază. Deci acestea nu trebuie redeclarate în clasa derivată. În limbajul C++ încapsularea poate fi forţată prin controlul accesului, deoarece toate datele şi funcţiile membre sunt caracterizate printr-un nivel de acces . Nivelul de acces la membrii unei clase poate fi: 177 1 public , protected sau private Clasa B Clasa A protected private public clasă derivată Figura 12.1. Accesul la membrii unei clase. Moştenirea publică, protejată sau privată private : membrii (date şi metode) la care accesul este private pot fi accesaţi doar prin metodele clasei (nivel acces implicit); protected : aceşti membri pot fi accesaţi prin funcţiile membre ale clasei şi funcţiile membre ale clasei derivate; public: membrii la care accesul este public pot fi accesaţi din orice punct al domeniului de existenţă a clasei respective; friend: aceşti membri pot fi accesaţi prin funcţiile membre ale funcţiei prietene specificate. În limbajul C++, nivelul de acces poate preciza şi tipul de moştenire (figura 12.1.): Publică, unde în clasa derivată nivelul de acces al membrilor este acelaşi ca în clasa de bază; Privată, unde membrii protected şi public din clasa bază devin private în clasa derivată; Protejată (la compilatoarele mai noi).
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CAPITOLUL 12 Crearea ierahiilor de clase Când o clasă moşteneşte membrii unei alte clase, membrii clasei de bază devin membrii ai clasei derivate. Moştenirea protejată este intermediară celei publice şi celei private. În cazul moştenirii protejate, comparativ
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 20

capitolul12 - CAPITOLUL 12 Crearea ierahiilor de clase...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online