Pembuatan Thread dalam Java
Pembuatan thread pada java dapat dilakukan menggunakan dua cara yaitu menggunakan interface runable dan membuat turunan
1. Menggunakan interface Runnable
Untuk menggunakan teknik ini selain mengimplementasikan interface Runnable , juga perlu dibuat sebuah method run().
Pehatikan kode program di bawah ini:
Penjelasan kode program di atas sebagai berikut
a. class Multix meng-iplement pada interface Runnable
class Multix implements Runnable |
b. di bentuk method void run () , untuk menyimpan daftar perintah yang dilakukan . Method ini adalah salah satu method pemicu oprasi
c. Terjadi pembuatan obyek baru dengan induk class Multix , serta terjadi pengalihan panggilan method dengan menggunakan thread.
public static void main (String atgs[ ] { Multix m1 = new Multix ( ) ; Thread t1 = new Thread (ml); t1.start ( ) ; } |
2. Menggunakan turunan class Thread
Cara lain untuk mengiplementasikan thread dalam Java dengan menurunkan ( extend ) class
1 class Multiz extends Thread { 2 public void run () { 3 System.out.println ( " thread extends is running ..."); 4 } 5 6 public static void main (String args [ ] ){ 7 Multiz t1 = new Multiz ( ) ; 8 t1.start ( ) ; 9 } 10 } |
Penjelasan kode program diatas sebagai berikut :
a. Pada kode program tersebut digunakan perintah extends thread . terdapat perbedaan dengan teknik sebelumnya, yaitu pada bagian berikut.
Multiz t1 = new Multiz ( ) ; t1.start ( ) ; |
b. pada teknik ini, classs Multiz dapat langsung membentuk sebuah objek dan objek tersebut dapat langsung menggunakan fasilitas pada class Multiz , yaitu method run ( ).
3. Perbedaan penggunaan Interface Runnable dan Turunan Class Thread
Berikut adalah perbedaan pembuatan thread menggunakan interface Runnable dan turunan class Thread
NO | Interface Runnable | Turunan Class Thread |
1 | Tidak memiliki overhead method tambahan | Memiliki overhead tambahan dari class Thread |
2 | Dapat meng- extend class lain | Tidak dapat meng-extend clas lain |
3 | Merupakan praktik pemrograman berorientasi obyek terbaik | Bukan merukan praktik pemrograman berorientasi obyek terbaik |
4 | Hubungan renggang ( loosely coupled ) | Hubungan rapat ( tighty coupled ) |
5 | Meningkatkan penggunaan kembali kode yang ada ( code reusability) | Tidak meningkatkan penggunaan kembali kode yang ada ( code reusability) |
6 | Untuk tugas dari thread yang lebih umum | Untuk tugas dari thread tertentu |
7 | Pemeliharaan kode lebih mudah | Pemeliharaan kode memakan waktu |
8 | Memisakhkan taks yang sebenarnya dari eksekutor | Taks tidak terbisah dari eksekutor |
No comments:
Post a Comment