Przypisywanie klas - w jaki sposób zrobić to poprawnie?

0

Chciałbym się dowiedzieć czy istnieje możliwość przypisywania klas np.:

Klasa Robocik:

Robocik a = new Robocik(parametry);
Robocik b = new Robocik(inne parametry);
Robocik temp;

temp = a;
a=b;
b=a;

Można tak ? A jeśli tak to w jaki sposób bo ten sposób nie działa XD.

0

Ależ oczywiście, że ten kod działa (http://ideone.com/y26xxk) - inna sprawa, że nie robi tego, co zapewne myślisz, że robi.


Btw, cóż miało oznaczać to "XD" na końcu?
0

A nie jednak chyba działa.
I znalazłem swój błąd:
bo moje obiekty miały zarówno pola z x,y oraz swoja teksturą.
Jeśli poprzypisywałem je na wzajem to wartości się pozamieniały ale zmiany nie widać ponieważ obiekt o pozycji x,y dalej ma ten sam kolor jak. Rozumiecie o co mi chodzi(hope). :>
Więc od teraz po prostu zmieniam kolor, zamiast wartość całego obiektu.

+1 do optymalizacji :D

0

W Javie nie ma zmiennych typu obiekt. Zmienne są albo prymitywami (int, char, byte, float, etc) albo referencjami (czyli ogólnie wskaźnikami, tylko składnia nieco inna niż w C/ C++) do obiektów.

0

Ogolnie nie abym sie czepial, ale imo jedyna sensowna roznica miedzy wskaznikami, a referencjami jest taka, ze dla wskaznikow obowiazuje arytmetyka (mozliwosc dodawania adresow), a referencje tylko wskazuja na obiekt: nazwa jest przepisana do rzeczywistego obiektu. Podobna jest roznica miedzy wskaznikami, a referencjami w C++ (poza prostsza skladnia dla referencji).

Przy okazji, autor tematu moglby poczytac sobie o porownywaniu Stringow w javie: tam jest podobny problem z przypisaniami i referencjami, a ta wiedza na pewno sie przyda.

Pozdrawiam,

1 użytkowników online, w tym zalogowanych: 0, gości: 1