Sobes.tech
Junior — Middle

Java-da Callable və Runnable interfeyslərinin rolu nədir və bu interfeysləri hansı sinif həyata keçirir?

sobes.tech Süni İntellekt

AI-dan cavab

Java-da, Runnable və Callable interfeysləri, ayrı axınlarda icra oluna bilən tapşırıqları təsvir etmək üçün istifadə olunur.

  • Runnable — nəticə qaytarmayan və yoxlanılan istisnalar atmayan vəzifəni təmsil edir. run() metodu dəyər qaytarmır.
  • Callable<V> — Runnable-ə bənzər, lakin V növündə nəticə qaytara və istisnalar ata bilər. call() metodu dəyər qaytarır.

Thread sinfi Runnable interfeysini həyata keçirir, bu da run() metodundan kod icra edən axınlar yaratmağa imkan verir.

Callable ilə ExecutorService nümunəsi:

ExecutorService executor = Executors.newSingleThreadExecutor();
Callable<Integer> task = () -> {
    // Bir hesablama tapşırığı
    return 123;
};
Future<Integer> future = executor.submit(task);
Integer result = future.get();
executor.shutdown();