Sobes.tech
Junior — Middle

Java'da veri akışlarının oluşturulması nasıl gerçekleştirilebilir ve bunların farkları nelerdir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Java'da veri akışları (streams) birkaç farklı şekilde oluşturulabilir:

  1. Thread sınıfından kalıtım

    • Thread'i genişleten ve run() metodunu geçersiz kılan bir sınıf oluşturursunuz.
    • start() çağrısı ile akışı başlatırsınız.
  2. Runnable arayüzünün uygulanması

    • run() metodunu içeren Runnable'ı uygulayan bir sınıf oluşturursunuz.
    • Nesneyi Thread yapıcısına geçirip başlatırsınız.
  3. ExecutorService kullanımı

    • Bir thread havuzunu yönetmenizi sağlar.
    • Ölçeklenebilir uygulamalar için uygundur.
  4. Callable ve Future kullanımı

    • Akıştan sonuç almanıza olanak tanır.

Farklar:

  • Thread'ten kalıtım, çoklu kalıtımı desteklemediği için sınırlıdır.
  • Runnable daha esnektir, bileşimi kullanmaya izin verir.
  • ExecutorService, thread'leri ve yaşam döngülerini yönetmeyi basitleştirir.

Runnable ile örnek:

class MyRunnable implements Runnable {
    public void run() {
        System.out.println("Thread başlatıldı");
    }
}

public class Main {
    public static void main(String[] args) {
        Thread thread = new Thread(new MyRunnable());
        thread.start();
    }
}