Dne 3.3.2011 17:34, Tomas Pitner napsal(a):
Tuším, že to bude jistě něco s "ukazateli" (promiňte mi ten výraz, vím v
Javě nejsou).

Jen pro upřesnění, ukazatele v Javě jsou, jsou to všechny objektové
proměnné. To co v Javě není je ukazatelová aritmetika. Tj. v Céčku jde
udělat

struct bla *p;
struct bla a[10];

p = &a[3]; //p ukazuje na a[3]
p = p + 1; //p ukazuje na a[4]
p++;       //p ukazuje na a[5]

kdežto v Javě lze do ukazatele jedině přiřadit jiný ukazatel nebo null.

Při předávání parametrů do metod se předávají všechny parametry hodnotou,
primitivní i objektové, takže při použití

Bla bla = new Bla(1);
nejakaMetoda(bla);
System.out.println(bla);
...

public void nejakaMetoda(Bla par) {
  par = new Bla(2);
  return;
}

se vytiskne obsah instance inicializované s Bla(1), jelikož se
sice do parametru "par" předala kopie ukazatele na Bla(1) a pak byla v těle
metody přepsána hodnotou ukazatele na Bla(2), ale na původní proměnnou "bla"
to nemá vliv.

Makub
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno             Martin Kuba
Institute of Computer Science    email: [email protected]
Masaryk University             http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ     mobil: +420-603-533775
--------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

Odpovedet emailem