Video: Yazılıma/Programlamaya nereden başlamalıyım? 2024
LaunchEvent'i başlatmak, başlatmak, olayları başlatmak ve kaldırmak gibi belirli geri sayım olaylarını tetikleyen konular için LaunchEvent adı verilen başka bir Java sınıfı oluşturabilirsiniz. Bu sınıf, iş parçacığı yaratmak ve başlatmak için başka bir teknik kullanır - bir tanesi daha fazla kod satırı gerektirir, ancak daha esnektir.
Thread sınıfını genişleten bir sınıf yaratma problemi, bir sınıfın bir üst sınıfa sahip olabilmesidir. İplik nesnenizi başka bir sınıfa çıkarmayı tercih ederseniz ne olacaktı? Bu durumda, Thread sınıfını genişletmek yerine Runnable arabirimini uygulayan bir sınıf oluşturabilirsiniz.
Runable arabirimi, bir iş parçacığı olarak çalıştırılabilen bir nesneyi işaretler. İş parçacığında çalıştırılan kodu içeren yalnızca bir çalıştırma yöntemi vardır.
Bir iş parçacığı oluşturmak ve başlatmak için Runnable arabirimini kullanmak için şunları yapmanız gerekir:
-
Uygulanan bir sınıf oluşturun Runnable.
-
Runnable sınıfında bir run yöntemi sağlayın.
-
Thread sınıfının bir örneğini oluşturun ve Runnable nesnenizi parametre olarak yapıcısına geçirin.
Runnable sınıfınızı çalıştırabilen bir Thread nesnesi oluşturuldu.
-
Konu nesnesinin başlangıç yöntemini çağırın.
Runnable nesnesinin run yöntemi, ayrı bir iş parçacığında çağrılır ve yürütülür.
Bu adımların ilk iki tanesi kolay. Hüner üçüncü ve dördüncü adımda, çünkü bunları birkaç şekilde tamamlayabilirsiniz. İşte bir yol, Runnable sınıfının RunnableClass olduğunu varsayarak:
RunnableClass rc = yeni RunnableClass (); Konu t = yeni Konu (rc); t. başla();
Java programcıları olabildiğince özlü olmayı sever, bu nedenle bu kodu sık sık
gibi sıkıştırılmış olarak görürsünüz. Thread t = new Thread (new RunnableClass ()); t. başla();
veya sadece şu:
yeni Konu (new RunnableClass ()). başla();
Bu tek satırlı sürüm çalışır - daha sonra programda thread nesnesine erişmenize gerek yoktur.