A rendszer elérése Javából

Kategória: Java standard könyvtárak.

A bevezető példában láthattuk azt, hogy kiírni a System.out.println() rendszerfüggvény segítségével lehet. A kiírás tehát nem nyelv alapelem, ahhoz beépített osztályra van szükség. A System osztály segítségével magát a rendszert érhetjük el. Most nézzük meg ezt egy kicsit részletesebben!

  • A System 3 publikus, statikus attribútumot definiál: out - standard output, err - standard error, in - standard input. Amikor tehát a System.out.println() függvényt hívíjuk meg, akkor a standard outputon hívjuk az ugyancsak statikus println() függvényt.
  • A System.exit() segítségével azonnal ki tudunk lépni a Java programból; paraméterül a visszatérési értéket kell megadnunk, amit az operációs rendszer kap meg (pl. System.exit(-1);). Egyébként ez az egyetlen programozható eset, amikor a try-catch-finally során nem fut le a finally. A gyakorlatban célszerű kerülni a használatát.
  • A környezeti változókat tudjuk beolvasni ill. módosítani. Pl. a System.getenv() az összes környezeti változóval tér vissza kulcs-érték formában. A System.getenv(key) eg adott környezeti változót kérdez le. A System.getProperties() a programnak -D-vel átadott értékeket olvassa be, a System.getProperty(key) egy adott értéket, a System.getProperty(key, default) pedig megvizsgálja, hogy az adott érték be van-e állítva, és ha igen, azzal tér vissza, ha nem, egy alapértelmezett értékkel. Ez utóbbi típust módosíthatjuk ill. törölhetjük is a System.setProperty(key, value), a System.setProperties(properties) és a System.clearPorperty(key) függvényekkel.
  • Lekérdezhetjük a rendszeridőt a System.currentTimeMillis() ill. a System.nanoTime() függvényhívásokkal.
  • Javasolhatjuk a Java virtuális gépnek, hogy szabadítson fel memóriát, a System.gc() hívással. Vonatkozó eljárás a System.runFinalization().
  • Lekérdezhetjük a sorvégi karaktereket (tehát hogy \n vagy \r\n-e) a System.lineSeparator() függvényhívással.
  • A System.console() eljárással lekérhetjük a konzolt (ha van), és ott író-olvasó műveleteket hajthatunk végre. Pl. ily módon célszerű jelszót beolvasni.

És még számos egyéb eljárást találunk a System osztályban.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License