Previzualizare curs:

Extras din curs:

1. Programare procedurala –Programare orientata pe obiecte.

Limbajul C, ca si Pascal, utilizeaza modelul programarii structurate procedurale, care consta în descompunerea programului în proceduri (functii), apelate în ordinea în care se desfasoara algoritmul. Datele sunt separate de functiile care le manipuleaza.

Odata cu cresterea dimensiunii programelor s-a acordat o atentie sporita organizarii datelor – functiile, împreuna cu datele pe care le manevreaza sunt organizate ca un modul. Programarea modulara este tot programare procedurala, cu proceduri si date grupate în module si ascunse altor module.

Programarea orientata pe obiecte consta în identificarea unor obiecte, cu operatii (metode) specifice asociate si realizarea comunicarii între aceste obiecte prin intermediul unor mesaje. Elementul constructiv – obiectul este o instanta a unei clase (tip de data definita de utilizator). Clasele sunt membre ale unei ierarhii si sunt corelate între ele prin relatii de mostenire.

Un limbaj de programare pune la dispozitia utilizatorilor un numar de tipuri primitive (sau predefinite). Astfel în C avem ca tipuri primitive char, int, float, etc. Un tip de date este precizat printr-o multime finita de valori T (constantele tipului) si o multime de operatori (aplicatii T ® T sau

T ´ T ® T).

Într-un limbaj de programare un tip de date reprezinta un model matematic. Astfel tipul int , caracterizat prin multimea finita de întregi (-32768, 32767) si operatorii binari +, -, *, / si % ilustreaza conceptul de numar întreg.

Modelele matematice care nu au reprezentare directa prin tipuri predefinite se pot reprezenta prin tipuri definite de utilizator (numite si tipuri de date abstracte- TDA).

2. Declararea claselor.

O clasa reprezinta un tip definit de utilizator. Declararea unei clase se face într-o maniera asemanatoare declararii structurilor si contine atât date cât si functii (metode) si putem declara variabile de acest tip nou. Un obiect este un exemplar sau o instanta a unei clase (în vechea terminologie obiectul este echivalent unei variabile, iar clasa este echivalentul unui tip definit de utilizator).

Consideram conceptul Data, pe care-l reprezentam printr-o structura si un set separat de functii de manipulare:

struct Data{

int a, l, z; // reprezentare

};

void initD(const Data&, int, int, int); //initializare

void ad_a(const Data&, int); //adauga un an

void ad_l(const Data&, int); //adauga o luna

void ad_z(const Data&, int); //adauga o zi

Nu exista o legatura implicita între date si functiile de manipulare a lor. Pentru a stabili aceasta legatura, declaram functiile ca membre ale structurii:

struct Data{

int a, l, z; // reprezentare

..// functii de manipulare

void initD(int, int, int); // initializare

void ad_a(int);

void ad_l(int);

void ad_z(int);

};

Functiile declarate în definirea clasei (structura este o clasa) se numesc functii membre si pot fi apelate numai de variabile de tipul corespunzator (obiecte) folosind sintaxa de acces la membrii structurii:

Data d;

d.initD(2001, 10, 15);

d.ad_a(3);

. . .

Definirea functiilor membre, în afara clasei se face folosind operatorul de vizibilitate (rezolutie), care indica faptul ca functia apartine clasei specificate înaintea acestui operator.

void Data::initD(int aa, int ll, int zz){

a = aa;

l = ll;

z = zz;

};

Declararea unei clase se face în mod asemanator cu declararea unei structuri. Cuvântul struct este înlocuit prin class, iar câmpurile se separa în date membre si functii membre (sau metode). În plus, se pot preciza specificatori de acces la membri. Acestia pot fi:

• private – membrii sunt accesibili numai din interiorul clasei

• public – membrii sunt accesibili din afara clasei

• protected – membrii sunt accesibili din interiorul clasei si din clasele derivate

Domeniul de definitie al clasei este cuprins între începutul definitiei clasei (class nume) si sfârsitul definitiei.

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • clase.doc
Alte informații:
Tipuri fișiere:
doc
Nota:
8.5/10 (6 voturi)
Nr fișiere:
1 fisier
Pagini (total):
104 pagini
Imagini extrase:
14 imagini
Nr cuvinte:
4 810 cuvinte
Nr caractere:
25 977 caractere
Marime:
26.92KB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Curs
Domeniu:
Calculatoare
Predat:
la facultate
Materie:
Calculatoare
Sus!