KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread...

29
KASUS INHERITANCE (Window, Multithreading dan Applet)

Transcript of KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread...

Page 1: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

KASUS INHERITANCE (Window, Multithreading dan Applet)

Page 2: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

FRAME/WINDOWS

Page 3: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

FRAME •  Frame : merupakan komponen window paling atas yang

memiliki judul dan border •  Frame merupakan salah satu komponen utama dalam

GUI programming • Ada 2 framework untuk GUI programming di Java, yaitu:

•  AWT à java.awt •  SWING à javax.swing

Page 4: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

JFRAME • Di framework Swing, klas untuk membuat window adalah

JFrame • Sehingga, salah satu langkah yang bisa ditempuh untuk

membuat window adalah dengan membuat subklas dari JFrame.

Page 5: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh • Buat paket dengan nama gui • Buatlah class Window dengan struktur dasar seperti di

bawah ini • Di contoh tersebut terlihat bahwa dia memiliki atribut

menuBar, menu, menuItem, panel, label, btn dsb. Atribut tersebut menunjukan komponen-komponen yang akan dimasukan atau ditambahkan atau ditampilkan di dalam window.

Page 6: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang
Page 7: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

• Kemudian isi method buatMenu() •  Terlihat didalamnya instansiasi menuBar, menu1,

menu2, menuItem1 dan menuItem2, dan proses untuk menambahkan menuItem ke menu dan proses menambahkan menu ke daam menuBar dan memasukan menuBar ke Frame

Page 8: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

• Kemudian isi method buatKomponen() •  Di dalamnya terlihat instansiasi panel, label, tf1, tf2,

combo, cekBox, textArea dsb • Kemudian objek-objek label, tf1, tf2, combo, cekBox,

textArea dsb dimasukan ke dalam panel, dan panel dimasukan ke dalam frame

Page 9: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang
Page 10: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

• Kemudian buat class Main dan buat method main() di dalamnya

• Di dalam method main, dilakukan instansiasi objek dari klas Window yang sebelumnya telah dibuat, kemudian dipanggil method buatMenu() dan buatKomponen()

• Kemudian atur ukuran window dan tampilkan

Page 11: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang
Page 12: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Hasil Output

Page 13: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

MULTITHREADING

Page 14: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Multithreading •  Thread : adalah sebuah proses yang kecil (lightweight

process) •  Thread merupakan sebuah kumpulan urutan proses yang

menyusun program • Multithreading : berarti suatu program yang didalamnya

terdapat beberapa thread yang jalan secara bersamaan (atau hampir bersamaan-dengan selisih waktu yang sangat kecil)

Page 15: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Multithreading •  Ilustrasi multithreading

PROGRAM

thread 1

Thread 2

Thread 3

Beberapa thread jalan bersamaan

Page 16: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Multithreading •  Ilustrasi program tanpa multithreading

PROGRAM

thread 1

Thread 2

Thread 3

Beberapa thread tidak jalan bersamaan,melainkan secara berurutan/gantian

Page 17: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Multithreading di Java •  Java mendukung Multithreading • Cara membuat Multithreading di Java:

•  Buat klas yang implements ke interface Runnable •  Buat klas yang menurun/extends dari klas Thread

• Yang dibahas di slide ini adalah yang cara ke-2 (yang ada hubungannya dengan konsep inheritance dan overriding)

Page 18: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Langkah-Langkah Implementasi • Buat Class extends ke klas Thread • Override terhadap method public void run(){…}, dan

letakkan kode program dari proses yang ingin dijalankan secara bersamaan di dalam method run() tersebut

• Buat objek •  Jalankan thread dengan cara

namaObjek.start();

Page 19: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh (1) : Buat subklas dari klas Thread

Override method run()

Page 20: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh (2) :

Jalankan thread dengan namaObjek.start();

Page 21: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh (3) : •  Terlihat dari hasil, bahwa thread Proses 1,

Proses 2, Proses 3 dan Proses 4 jalan secara bersamaan (hampir bersamaan)

•  Jika thread Proses 1, Proses 2, Proses 3 dan Proses 4 tidak jalan secara bersamaan, maka hasilnya seharusnya:

Proses1 … … 10 x Proses 2 … … 10 x Proses 3 … … 10 x Proses 4 … … 10 x

Page 22: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

APPLET

Page 23: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Applet • Applet : program Java yang bisa dijalankan via internet,

yaitu melalui web browser • Dengan menggunakan Applet, kita bisa membuat

program Java yang bisa dijalankan via web brower

Page 24: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Life Cycle dari Applet •  init()

•  Method pertama yang dipanggil ketika applet di-load

•  start() •  Method berikutnya yang dipanggil setelah init() •  Dijalankan ketika applet mulai jalan di appletviewer atau web

browser

•  stop() •  Method ini jalan ketika WebBrowser/Applet viewer di-close/keluar

•  destroy() •  Method ini jalan ketika objek Applet dihapus dari memori

Page 25: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Cara Implementasi Applet • Buat class yang menurun/extends dari klas Applet • Untuk merubah tampilan Applet, lakukan overriding

terhadap method paint() • Apabila perlu, lakukan overriding juga pada method init(),

start(), stop() dan destroy()

Page 26: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh Applet

Page 27: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh Applet (dijalankan di AppletViewer)

Page 28: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Contoh Applet (dijalankan di Web Browser)

Page 29: KASUS INHERITANCE - ifrozi.files.wordpress.com fileContoh • Buat paket ... PROGRAM thread 1 Thread 2 Thread 3 Beberapa thread jalan bersamaan . Multithreading ... program Java yang

Embedding Applet di HTML