Chciałem się dowiedzieć czy jak np. stworzyłem 20 JButtonow i chcę w kazdym zmienic text to musze pisac 20 razy jButton1.setText("asd"); czy mozna to zrobic w jakis inny sposob ?
Mozesz je trzymac w jakims kontenerze (Vector, ArrayList, ...) i w petli poleciec po wszystkich.
No niby tak, ale czy wowczas nie bede trzymal tam kopi tych obiektow ? Slyszalem ze w Javie nie ma wskaznikow ?
W Javie prawie wszystko jest "wskaznikiem" ;-)
smierdziel napisał(a)
No niby tak, ale czy wowczas nie bede trzymal tam kopi tych obiektow ? Slyszalem ze w Javie nie ma wskaznikow ?
nie, w javie wszystko jest referencją, a nie wskaźnikiem, więc nie będziesz tam miał żadnych kopii
W Javie wszystko jest referencja (poza prymitywami), ale moze to byc zaimplementowane za pomoca wskaznikow - tak jak referencje w C++ to tak na prawde wskazniki tylko zamaskowane :D
chyba od tego sa tablice, zebys nie musial dwiescie razy wypisywac tego samego gow.. nie?
JButton[] tab;
for (int i=0; i<20; i++)
tab[i] = new JButton("Guzik " + i);
// zmiana wszystkich na raz
for (int i=0; i<20; i++)
tab[i].setText("Button " + i);
Natomiast uslyszales od jakiegos przecietniaka ze wskaznikow nie ma, bo ich dzialanie jest w Javie ukryte. Jak wspomnieli przedmowcy, referencja nie jest stosowana do typow prostych oraz klasy String. Do reszty jak najbardziej.