P. 1
Cristian Frasinaru-Curs Practic de Java

Cristian Frasinaru-Curs Practic de Java

|Views: 3|Likes:
Published by Andreea gin
curs
curs

More info:

Published by: Andreea gin on May 23, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/23/2013

pdf

text

original

Variabilele membre ale unei clase se declar˘a de obicei ˆınaintea metodelor,

de¸si acest lucru nu este impus de c˘atre compilator.

2.2. CREAREA CLASELOR

47

class NumeClasa {

// Declararea variabilelor

// Declararea metodelor

}

Variabilele membre ale unei clase se declar˘aˆın corpul clasei ¸si nuˆın corpul

unei metode, fiind vizibile ˆın toate metodele respectivei clase. Variabilele

declarate ˆın cadrul unei metode sunt locale metodei respective.

Declararea unei variabile presupune specificarea urm˘atoarelor lucruri:

• numele variabilei
• tipul de date al acesteia
• nivelul de acces la acea variabila din alte clase
• dac˘a este constant˘a sau nu
• dac˘a este variabil˘a de instant¸˘a sau de clas˘a
• alt¸i modificatori

Generic, o variabil˘a se declar˘a astfel:

[modificatori] Tip numeVariabila [ = valoareInitiala ];

unde un modificator poate fi :

• un modificator de acces : public, protected, private (vezi ”Mod-
ificatori de acces pentru membrii unei clase”)

• unul din cuvintele rezervate: static, final, transient, volatile

Exemple de declarat¸ii de variabile membre:

class Exemplu {

double x;

protected static int n;

public String s = "abcd";

private Point p = new Point(10, 10);

final static long MAX = 100000L;

}

48

CAPITOLUL 2. OBIECTE S¸I CLASE

S˘a analiz˘am modificatorii care pot fi specificat¸i pentru o variabil˘a, alt¸ii

decˆat cei de acces care sunt tratati ˆıntr-o sect¸iune separata: ”Specificatori

de acces pentru membrii unei clase”.

• static

Prezent¸a lui declar˘a c˘a o variabil˘a este variabil˘a de clas˘a ¸si nu de

instant¸˘a. (vezi ”Membri de instant¸a ¸si membri de clas˘a”)

int variabilaInstanta ;

static int variabilaClasa;

• final

Indic˘a faptul c˘a valoarea variabilei nu mai poate fi schimbat˘a, cu alte

cuvinte este folosit pentru declararea constantelor.

final double PI = 3.14 ;

...

PI = 3.141; // Eroare la compilare !

Prin convent¸ie, numele variabilelor finale se scriu cu litere mari. Folosirea

lui final aduce o flexibilitate sporit˘a ˆın lucrul cu constante, ˆın sensul

c˘a valoarea unei variabile nu trebuie specificat˘a neap˘arat la declararea

ei (caˆın exemplul de mai sus), ci poate fi specificat˘a ¸si ulteriorˆıntr-un

constructor, dup˘a care ea nu va mai putea fi modificat˘a.

class Test {

final int MAX;

Test() {

MAX = 100; // Corect

MAX = 200; // Eroare la compilare !

}

}

• transient

Este folosit la serializarea obiectelor, pentru a specifica ce variabile

membre ale unui obiect nu particip˘a la serializare. (vezi ”Serializarea

obiectelor”)

2.2. CREAREA CLASELOR

49

• volatile

Este folosit pentru a semnala compilatorului s˘a nu execute anumite

optimiz˘ari asupra membrilor unei clase. Este o facilitate avansat˘a a

limbajului Java.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->