16-17-18-as előadások Flashcards
A JAR eszköz mire való, milyen műveleteket lehet vele elvégezni?
Több fájlt lehet vele egybecsomagolni egy archivált fájlba. Ez általában class fájlokat és kiegészítő erőforrásokat tartalmaz.
Create: jar cf jar-file input-file(s)
View the content: jar tf jar-file
Extract the contents: jar xf jar-file
Extract specific files: jar xf jar-file archived-file(s)
Run an aplication packaged as a Jar: java -jar app.jar
A JAR file “mainfest”-jét mutassa be!
A Jar tool automatikusan létrehozza a manifest fájlt az archivált fájlok melett. Ez egy speciális metaadat fájl, a JAR fájl tartalmának és viselkedésének leírására szolgál és a META-INF/MANIFEST.MF útvonalon található.
A program Main-Class át is bele kell írni.
Manifest-Version: 1.0 alapértelmezetten.
Mi az a Java modul?
A modularitás egy magasabb szintű csoportosítást vezet be a csomagok fölé. Ez a kulcsfontosságú elem a modul, amely egyedi névvel ellátott, újrafelhasználható csoportja az egymással kapcsolatban álló csomagoknak és erőforrásoknak. Tartalmaz egy modul leíró fájlt amely leírja a működését és kapcsolatát más modulokkal.
A Java modul module-info.java állományában mit jeletenek az exports, exports .. to, requires, uses direktívák?
Export: Modulutasítás, amely megadja, hogy a modul egy adott csomagja mely publikus típusai és beágyazott public/protected típusai legyenek elérhetőek más moduloknak.
Export … to: Lista amely azon modulokat tartalmazza amelyek hozzáférést kapnak az előbb említett módon a modulhoz.
Requires: Azt jelenti, hogy egy adott modul egy másikra támaszkodik. Ez a modulfüggőség. Minden modulnak meg kell határoznia a függőségeit. A modul olvassa B modult ha A hivatkozik B-re
Uses: Azt jelenti, hogy a modul egy szolgáltatást használ. Ezáltal szolgáltatásfogyasztó lesz. A szolg. egy olyan objektum amely implementál egy a uses utasításban megadott interfészt, vagy kiterjeszt egy ott megadott absztrakt osztályt.
A kollekciók aggregáló műveletei esetén a pipeline-nak milyen részei vannak? Melyik mire való?
Forrás: A pipeline kiindulópontja, az adatforrás. Lehet kollekció, tömb, generátorfüggvény vagy akár I/O csatorna
Köztes műveletek: A forráson logikai műveleteket hajtanak végre, anélkül, hogy az elemeket ténylegesen módosítanák.
Stream: Nem kollekció, értékeket szállít a forrástól a célig. Elemek sorozata.
Filter műveletek: Új streamet hoz létre, amely csak azokat az elemeket tartalmazza amelyek megfelelnek a feltételének.
Terminálműveletek: Nem-stream eredményt állít elő. Ez lehet primitív érték, kollekció, vagy a forEach esetében csak végrehajtja a műveletet.
Hogyan működik a reduce művelet a kollekciók aggregáló műveletei esetén?
A reduce művelet egy stream elemeit egyetlen eredményre redukálja egy asszociatív művelet segítségével.
Hogyan működik a collect művelet a kollekciók aggregáló műveletei esetén?
A collect művelet a kollekciók aggregáló műveletei során a stream elemeit egy új struktúrába (pl. lista, halmaz, térkép) gyűjti össze.
Mutassa be a kollekciók aggregáló műveleteiből a groupingBy és a reducing műveleteket!
A groupingBy a Collectors osztály része, és egy stream elemeit egy adott kulcs alapján kategóriákba csoportosítja.
A reducing a Collectors osztály egy másik művelete, amely egy stream elemeit egyetlen eredményre redukálja.