Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Pitanje u vezi dodeljivanja jednog objekta drugom objektu.

  • 7 odgovora
  • 3.911 pregleda

Najnovija ↓

Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 18.03.2014. u 11:31 · pre 154 meseca #1
Pitanje jedno, da vidim jesam li dobro shvatio.

Class Kutija
{
...
}

Kutija b1=new Kutija();
b2=b1;

Pitanje.

Objektu b2 se ne dodeljuju vrednosti iz objekta b1 ? Nego samo b2 nasledjuje referencu objketa b1 tj, objekat b2 sada ukazuje na klasu Kutija?
I ako budemo menjali objekat b1, objekat b2 se nece menjati ?

Class Kutija
{
double visina;
double duzina;
}

b2=b1

Ako napisemo da sada b1.visina=50; b1.duzina=60; Ovo nece nista promeniti objekat b2 ? Jel tako ?
Re: Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 18.03.2014. u 15:33 · pre 154 meseca #3
Ja bih isto rekao da su b1 i b2 objekti , b1 novi objekat klase Kutija ... Mozes nam pomoci pa napisati sta je objekat klase Kutija i kako bi ga napravio ako ne kao Kutija b1= new Kutija(visina,duzina) ....

Re: Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 18.03.2014. u 16:27 · pre 154 meseca #4
b1 i b2 su promenljive.
new Kutija(visina, sirina) pravi nov objekat kutije i vraca njegovu referencu (koju ti u ovom slucaju smestas u b1).
Kada posle kazes b2 = b1, ti kopiras referencu i smestas je u b2.
Sada i b1 i b2 sadrze referencu na objekat koji kreirao.
Napravljen je ukupno jedan objekat, dve promenljive i dve reference u tim promenljivim.
Objektima se nista ne dodeljuje, samo promenljivama.
Potpis
Nebojsa Milanovic:
-Trumpa smatram vrhunskim predsednikom i voleo bih da živim u državi na čijem je on čelu
-Rusija ne laže, ne vodi osvajačke ratove
-Trump je svetla tačka u USA blatu
-Elon Musk, možda najpametniji i najtrezveniji Amerikanac
Sviđa mi se2
Re: Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 20.03.2014. u 03:41 · pre 154 meseca #5
Citat:
miljannet:
Objektu b2 se ne dodeljuju vrednosti iz objekta b1 ? Nego samo b2 nasledjuje referencu objketa b1 tj, objekat b2 sada ukazuje na klasu Kutija?
I ako budemo menjali objekat b1, objekat b2 se nece menjati ?

Class Kutija
{
double visina;
double duzina;
}

b2=b1

Ako napisemo da sada b1.visina=50; b1.duzina=60; Ovo nece nista promeniti objekat b2 ? Jel tako ?

U sustini, iz odgovora drugih komentatora se moze zakljuciti da je odgovor na tvoje pitanje "ne", ali ne smeta ponoviti.
Dakle, obe promenjive(b1 i b2) pokazuju na isti objekat. Ako promenis b1, b2 se takodje menja i obrnuto.

Code:

b1=new Kutija(10,50);
b2=b1;
b1.setVisina(20);
System.out.println(b2.getVisina());//ispisace 20

b3=b1;
b2.setVisina(100);
System.out.println(b3.getVisina());//ispisace 100

b2=new Kutija(10,10);//sada b1 i b3 ukazuju na isti objekat(sa pocetka) a b2 na novi.
System.out.println(b2.getVisina());//ispisace 10
System.out.println(b3.getVisina());//ispisace 100

Sviđa mi se3
Re: Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 20.03.2014. u 14:42 · pre 154 meseca #6
Citat:
Andrej013: Ako promenis b1, b2 se takodje menja i obrnuto.

Ne bas :)
Ako promenis b1, sa b2 se ne desava nista.
Ako promenis nesto na objektu cija je referenca u promenljivoj b1, ce se promeniti i u objektu cija je referenca u promenljivoj b2 (jer je to jedan te isti objekat).
Potpis
Nebojsa Milanovic:
-Trumpa smatram vrhunskim predsednikom i voleo bih da živim u državi na čijem je on čelu
-Rusija ne laže, ne vodi osvajačke ratove
-Trump je svetla tačka u USA blatu
-Elon Musk, možda najpametniji i najtrezveniji Amerikanac
Sviđa mi se2
Re: Pitanje u vezi dodeljivanja jednog objekta drugom objektu. 07.04.2014. u 05:26 · pre 153 meseca #8
Citat:
miljannet: Nisam sad nista razumeo, ko je u pravu sada, moze li neko tacno da mi objasni, izvinite sto kasnim malo sa odgovorom, ali nisam mogao pre. :)

Shadowed je u pravu jer sam se ja pogresno izrazio-trebalo je da kazem da ako promenis vrednost promenjive na objektu na koji b1 "pokazuje" i ocitas tu istu vrednost sa objekta na koji b2 pokazuje, videces tu novu promenjenu vrednost jer pokazuju na isti objekat... Ali to su vec gramaticke zavrzlame, ono sto je bitno da razumes je kod koji sam okacio uz moj odgovor koji objasnjava ovo o cemu pricamo.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme