Sunteți pe pagina 1din 3

Laborator 4

Metodele unei clase Java. Constructori.

3.1. Atributele i metodele unei clase


O clas reprezint o modalitate de a descrie un nou tip de date. Clasa este o
descriere a unei mulimi de obiecte caracterizate prin structuri i comportamente
similare. De aceea, o clas va cuprinde definiiile datelor i operatiilor ce
caracterizeaz obiectele clasei respective.
Datele definite ntr-o clas se mai numesc atribute, iar operaiile se mai numesc
metode sau funcii-membru. Atributele i metodele formeaz membrii unei
clase.
Sintaxa folosit pentru a defini o clas n Java este:
class Nume_clasa {
// atribute si metode
}
Intr-un program orientat pe obiecte clasele servesc la declararea variabilelor.
Valorile unui tip clas se numesc obiecte sau instane ale clasei respective.
Scrierea unui program Java const n proiectarea i implementarea unui set de
clase. La rulare, instane ale acestor clase vor fi create i terse ori de cte ori
va fi necesar.
O bibliotec de clase este o colecie de clase de interes general ce pot fi
folosite la dezvoltarea programelor specifice anumitor domenii. Aceste clase
asigur reutilizarea codului la crearea unor noi aplicaii. Pachetul Java SDK vine
cu o serie de biblioteci standard reunite sub numele Java API (Application
Programming Interface).
Atributele unei clase sunt asemntoare variabilelor. Ele servesc la definirea
strii unui obiect al clasei respective.
Atributele pot fi de tip variabil instan sau variabil clas. Atributele de tip
variabil instan sunt reinute la nivelul fiecrei instane i deci au valori
diferite pentru instane diferite. Atributele de tip variabil clas sunt reinute la
nivelul clasei i au o valoare unitar pentru toate instanele clasei respective.
Metodele unei clase definesc comportamentul clasei respective. La rularea
programului, obiectele vor comunica ntre ele prin intermediul apelului acestor
metode. Comunicarea ntre obiecte este cunoscut sub denumirea de schimb de
mesaje (ca n Smalltalk !).

3.2. Constructorii
La definirea unei clase, programatorul poate prevedea una sau mai multe metode
speciale, numite constructori, al cror scop este acela de iniializare a strii
unui obiect imediat dup crearea sa.
Un constructor este o metod ( o functie) special care :
-

are acelai nume cu clasa n care este definit;


nu returneaz nimic, deci nu are tip (nici macar void !);
se apeleaz automat la crearea unui obiect de tipul respectiv
are specificatorul public n faa numelui.

Daca programatorul nu prevede ntr-o clas nici un constructor, atunci


compilatorul va prevedea clasa respectiv cu un constructor implicit fr nici
un argument i al carui corp de instruciuni este vid. Dac programatorul include
ntr-o clas cel puin un constructor compilatorul nu va mai genera constructorul
implicit pentru acea clas
Exemplu : Declararea unei clase Persoana i a constructorului asociat
obiectelor acestei clase
public class Persoana {
/* Atributele clasei */
String nume; // numele de familie
String prenume; // prenumele persoanei
int varsta; // varsta in ani impliniti
double inaltimea; // inaltimea persoanei
/* Metodele clasei */
/** Constructorul clasei Persoana - cu initializarea
atributelor obiectului
*/
public Persoana( String numePers, String prenumePers )
{
nume = numePers;
prenume = prenumePers;
varsta = 0;
inaltimea = 0;
}
/** Metoda afiseazaInformatii - afiseaza pe ecran
informatiile despre persoana
*/
void afiseazaInformatii() {
System.out.println("- Date despre persoana -");
System.out.println("Numele: " + nume + " "+prenume);
System.out.println("Varsta: " + varsta);
System.out.println("Inaltimea: " + inaltimea);
}

Sarcina : Completai programul de mai sus cu funcia main ( ) n care s citii


datele unei persoane de la tastatur i apoi s le afisai pe ecran (Scopul acestei
sarcini este de a nva s apelai metodele unei clase, respectiv constructorul
su i funciile membre).

S-ar putea să vă placă și