Child pages
  • 3. Egy kis szárazanyag

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

3.5. Blokkok

A nyelvek fejlődése során viszonylag korán megjelentek a blokkok, amelyek utasításokat fognak közre. Az eddigiek során láttunk már több blokkot is, amelyek összefogták az eddig beírt utasításainkat:

Code Block
languagejava
titleJava
linenumberstrue
{
}

Ugye ismerős? :)

A blokkok hasznos társaink lesznek a programozás során, hiszen utasítások kötegelt végrehajtása gyakori feladat. További hasznuk, hogy a deklarált változóknak hatókört adnak: egy változót mindig csak az őt tartalmazó blokkon belül tudjuk elérni:

Code Block
languagejava
titleJava
linenumberstrue
int i = 10;
{
  int j = 10;
}
System.out.println(j);

A program nem fordítható le, mivel a jváltozó csak a blokkon belül érhető el. A blokkok lehetővé teszik, hogy egy változónevet többször felhasználhassunk, ha azok olyan blokkban vannak deklarálva, ahol egymást nem látják:

Code Block
languagejava
titleJava
linenumberstrue
int j = 10;
{
  int i = 10;
  System.out.println(i);
  System.out.println(j);
}
{
  int i = 20;
  System.out.println(i);
  System.out.println(j);
}
System.out.println(j);

A két i nevű változó egymásról nem tud, tehát gond nélkül tudjuk használni a program különböző részeiben.

Fontos tudni, hogy változókat bármely blokkon belül tudunk deklarálni, s célszerű mindig a blokk elején megejteni azokat a deklarációkat, amelyeknek kezdőértéket is adunk, ezzel a programunk átláthatóbb lesz. A programunk írása során tucatnyi változót fogunk létrehozni, amelyeket folyamatosan hozunk létre, ezek is az adott blokkban lesznek csak elérhetők. Ha megnézünk egy Java osztályt, akkor láthatjuk, hogy az is egy nagy blokkban helyezkedik el, ezért rögtön a kezdő kapcsos zárójel után létrehozhatunk változókat, amelyeknek a neve osztályváltozó vagy példányváltozó, attól függően, hogy a módosítója szerint statikus vagy sem. Ezek a változók elfedhetők lokális (metódusokon belüli) változókkal, amelyekre oda kell figyelnünk, mivel aljas hibákat tudnak okozni.