Junior — Middle
Milyen módon valósítható meg az adatfolyamok létrehozása Java-ban, és miben különböznek egymástól?
sobes.tech MI
Válasz az MI-től
Java-ban az adatfolyamok (streams) létrehozása többféleképpen valósítható meg:
-
A Thread osztály öröklése
- Létrehoz egy olyan osztályt, amely kiterjeszti a
Thread-et és felülírja arun()metódust. - A
start()hívásával indítja el a szálat.
- Létrehoz egy olyan osztályt, amely kiterjeszti a
-
A Runnable interfész megvalósítása
- Létrehoz egy olyan osztályt, amely implementálja a
Runnable-t arun()metódussal. - Az objektumot átadja a
Threadkonstruktorának, és elindítja.
- Létrehoz egy olyan osztályt, amely implementálja a
-
Az ExecutorService használata
- Lehetővé teszi a szálak pooljának kezelését.
- Skálázható alkalmazásokhoz ideális.
-
A Callable és Future használata
- Lehetővé teszi eredmény lekérését a szálból.
Különbségek:
- A Thread öröklése korlátozza az öröklést, mivel a Java nem támogatja a többes öröklést.
- A Runnable rugalmasabb, lehetővé teszi a kompozíció használatát.
- Az ExecutorService egyszerűsíti a szálak kezelését és életciklusukat.
Runnable példával:
class MyRunnable implements Runnable {
public void run() {
System.out.println("Szál elindult");
}
}
public class Main {
public static void main(String[] args) {
Thread thread = new Thread(new MyRunnable());
thread.start();
}
}