Clase

Curs
8.9/10 (8 voturi)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 104 în total
Cuvinte : 4810
Mărime: 26.92KB (arhivat)
Cost: Gratis

Extras din document

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.

Preview document

Clase - Pagina 1
Clase - Pagina 2
Clase - Pagina 3
Clase - Pagina 4
Clase - Pagina 5
Clase - Pagina 6
Clase - Pagina 7
Clase - Pagina 8
Clase - Pagina 9
Clase - Pagina 10
Clase - Pagina 11
Clase - Pagina 12
Clase - Pagina 13
Clase - Pagina 14

Conținut arhivă zip

Alții au mai descărcat și

Proiectarea Aplicatiilor de Comert Electronic - Aplicatie de Food-Ordering

Progresele realizate recent în domeniile tehnologie-calculatoare, telecomunicatii si software, precum si în alte domenii ale informatiei, au...

Bazele Programarii - Probleme cu Vectori

Valoarea unui polinom Enunt Să se scrie programul pentru calcularea valorii unui polinom într-un punct dat. Coeficienții polinomului sunt numere...

Proiect Structuri de Date - Orar

1. INTRODUCERE 1.1 Obiectivul problemei : Aceasta aplicatie informatica are ca obiectiv gestionarea cat mai buna a orarului unei facultati pentru...

Folosirea MySQL și PHP în Gestionarea unei Baze de Date pe Web

Introducere Conţinutul lucrării este dat de construcţia de legături dintre World Wide Web şi baze de date, dintre tehnologia veche şi cea nouă,...

Arhitectura Calculatoarelor

I. Arhitectura calculatoarelor 1. Scurt istoric Momentul iniţial al istoriei calculatoarelor este, de obicei legat de numele matematicianului...

Internetul

1.Argumentul Multe persoane cred ca Internet-ul este un loc unde se discuta numai despre informatica, unde se întâlnesc numai pasionatii de...

Functii Recursive - Turbo Pascal

CUVÂNT ÎNAINTE Acest proiect la informatica consta în prezentarea în limbajul de programare Turbo Pascal a unei probleme ce îsi propune sa...

Sisteme de Intrari Prelucrari si Iesiri a Datelor prin Intermediul a PHP si MYSQL

Introducere Proiectul de specialitate constituie un element obligatoriu al planului de învatamânt astfel, proiectul de specialitate reprezinta...

Ai nevoie de altceva?