Hm, ajde da vidimo da li si shvatio.
Ako je
Student pera = new Student();
Student djoka = new Student();
pera.Godina = 3;
djoka.Godina = 2;
onda svako ima svoje godine i nema frke;
Ali ako :
Student pera = new Student();
Student djoka = pera;
pera.Godina = 3;
onda je ovde i djoka na trecoj godini. Naravno, ovo je sasvim zvezebe i nemas potrebe da ovo radis. Mislim, mozes, ali sta ce ti dve promenljive, tj. dve reference na isti objekat.
Mozda ces lakse i lepse da svaris te reference na sledeci nacin:
Student pera = new Student();
PostaviOsnovneVrednosti(pera);
// 1
.
.
.
.
.
private void PostaviOsnovneVrednosti(Strudent stud) {
stud.Godinestudija = 4;
// 2
}
Sta je poenta ovde ? Funkcija PostaviOsnovneVrednosti je void. Ali u posle programske linije //1 pera vec ima poslavljene godine studiranja, jer je funkciji PostaviOsnovneVrednosti poslata referenca na objekat a ne sam objekat. I taj objekat je promenjen.
OTPOR blokadi ulica, OTPOR blokiranom Beogradu, OTPOR blokiranoj Srbiji