Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Vracanje objekata kao rezultata metoda

[es] :: Java :: Vracanje objekata kao rezultata metoda

[ Pregleda: 1149 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

miljannet
Rakita Miljan
Crvenka

Član broj: 321026
Poruke: 56
*.dynamic.vipmobile.rs.



+3 Profil

icon Vracanje objekata kao rezultata metoda02.10.2015. u 09:37 - pre 104 meseci
Primer iz knjige

Radim primer iz knjige gde se objekat vraca kao rezultat metode. Ne znam da li sam dobro razumeo sta se ovde desava pa nisam negde u pravu da me ispravite.
Code:

class Test
{
    int a;
    
    Test(int i) // Konstruktor
    {
        a = i;
    }
    
    Test uvecajZaDeset()
    {
        Test privremeni = new Test(a+10);
        return privremeni;
    }
}

public class VratiObjekat 
{
    public static void main(String[] args) 
    {
        Test ob1 = new Test(2);
        Test ob2;
        
        ob2 = ob1.uvecajZaDeset();
        System.out.println("ob1.a: "+ob1.a);
        System.out.println("ob2.a: "+ob2.a);
        
        ob2 = ob2.uvecajZaDeset();
        
        System.out.println("ob2.a posle drugog povecanja: "+ob2.a);
    }
}


1. Test ob2; = Kada uradimo ovaj deo, mi dodeljujemo objektu ob2 referencu. Kada bi u ovom trenutno pokusali da preko objekta ob2 pristupimo klasi Test ne bi smo mogli jer mi jos nismo kreirali pravi objekat, samo smo mu dali referencu ?
2. ob2 = ob1.uvecajZaDeset(); Sada objektu ob2 se dodeljuje reference iz objekta ob1 ? Pa kada se pozove metoda uvecajZaDeset(); Stvara se novi objekat privremeni a objektu ob2 se vraca referenca od tog objekta privremeni ?

Ovo je onako kako sam ja shvatio. Jos imam malo problema sa delom gde se reference prosledjuje po vrednosti pa verovatno i to ima malo uticaju na ovu lekciju.
Ako bi ste mogli da mi date jos neki primer kako bi lakse razumeo gde se objekat vraca kao rezultat metoda bio bih vam zahvalan. Na netu bas nisam nasao puno primera u vezi ovog dela.
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12850



+4784 Profil

icon Re: Vracanje objekata kao rezultata metoda02.10.2015. u 10:10 - pre 104 meseci
Oba si donekle shvatio, ali ne bas sasvim :)
Za prvi deo:
Tacno je da ne mozes da pristupis klasi Test jer pre svega, klasi i ne pristupas (osim statickim delovima, ali to i ne radis preko promenljive). Pristupa se instanci i tu si dobro shvatio - nismo kreirali objekat. Ali, nismo dali ni referencu nikakvu. Referenca ukazuje na objekat. Posto ga nismo kreirali ne mozemo ni da damo referencu promenljivoj. Ne znam da li u Javi promenljiva po default-u ima Null reference.
Za drugi deo:
Prvi deo je pogresan. Ne dodeljuje se promenljivoj ob2 referenca od ob1. Redosled je ovakav:
-Deklarise se promenljiva ob2
-Izvrsi se uvecajZaDeset() na ob1
-Rezultat je nov objekat
-Referenca na njega se smesti u ob2

To je, naravno, sve u jednoj liniji koda. Izmedju prve i poslednje stavke ob2 nema nikakvu referencu (ili ima Null reference).
 
Odgovor na temu

[es] :: Java :: Vracanje objekata kao rezultata metoda

[ Pregleda: 1149 | Odgovora: 1 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.