Monday 11 August 2014

1. Objek

Untuk mempermudah pemahaman, maka disini akan dijelaskan melalui analogi. Pada dasarnya semua benda yang adadi dunia nyata dapat dianggap sebagai objek. Misalnya rumah, mobil, sepeda, motor, gelas, komputer, meja, sepatu, dll. Setiap objek memiliki atribut sebagai status (state) dan tingkah laku sebagai behavior.
Contoh objek : Motor. Maka atribute (state) nya adalah pedal, roda, jeruji, speedometer, warna, jumlah roda. Sedangkan tingkah laku (behavior) nya adalah kecepatan menaik, kecepatan menurun, dan perpindahan gigi motor.
Analogi pemrograman berorientasi objek sama dengan penggambara pada dunia nyata seperti contoh di atas. Dalam OOP, state disimpan pada variabel dan tingkah laku disimpan pada method.
Dalam bahasa teoretis OOP, Objek berfungsi untuk membungkus data dan fungsi bersama menjadi satu unit dalam sebuah program komputer. Objek merupakan dasar dari modularitas dan struktur dalam sebuah program komputer berorientasi objek.

2. Class

Definisi class yaitu template untuk membuat objek. Class merupakan prototipe atau blue prints yang mendefinisikan variabel-variabel dan method-method secara umum. Objek merupakan hasil instansiasi dari suatu class. Proses pembentukan objek dari suatu kelas disebut sebagai instantiation. Objek disebut juga sebagai instances.
Dalam bahasa teoretis OOP, class merupakan kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur dalam pemrograman berorientasi object.
Sebuah class secara tipikal sebaiknya dapat dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut. Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program ataupun sebaliknya.

3. Method

Method menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat dilakukan objek sepanjang hidupnya.
Metode  memiliki 4 (empat) bagian dasar :

1. Nama metode
2. Tipe Objek atau tipe primitive yang dikembalikan metode.
3. Daftar parameter.
4. Badan atau isi metode.

Tiga bagian pertama mengindikasikan informasi penting tentang metode itu sendiri. Dengan kata lain, nama metode tersebut=metode lain dalam program. Dalam java kita dapat memiliki metode-metode berbeda yang memiliki nama sama tetapi berbeda tipe kembalian atau daftar argumennya, sehingga bagian-bagian definisi metode ini menjadi penting. Ini disebut overloading metode.


4. Event

Event merupakan respon dari program ketika user melakukan tindakan terhadap GUI tertentu dalam aplikasi.

Agar komponen GUI yang kita buat dapat menghasilkan event ketika ada interaksi dari user terhadap GUI, seperti menekan tombol, keyboard, menggerakan mouse, dan sebagainya, diperlukan listener untuk melakukannya.

Dengan adanya listener ini, event yang dihasilkan dari GUI dapat merespon dari suatu interaksi yang ditujukan kepada suatu instruksi program.
Untuk dapat menggunakan listener, diperlukan sebuah Class yang terdapat pada java.awt.event.*;.


1. Elemen-elemen Event
Pemahaman mengenai elemen-elemen pada event mutlak diperlukan demi penangan event itu sendiri agar dapat berjalan sesuai instruksi. Berikut elemen-elemen pada event.

a. Event Source
Event source merupakan pembankit sebuah event. Contoh, klik mouse pada button akan membangkitkan sebuah ActionEvent, button tersebut berfungsi sebagai event sourcenya.
b. Event Handler
Event handler merupakan method yang menerima sebuah objek event, mendeklarasikan kemudian memproses interaksi dengan user.
awt merupakan package GUI yang menangani event, dengan interface yang disebut event listener. Setiap event terdapat interface listener, yang harus diisikan kedalam class dari object yang akan menerima event. Listener akan menetapkan method yang didefinisikan untuk menerima jenis event tsb. Method ini akan dipanggil dan dijalankan ketika event terjadi.

2. Kategori Event

a. Actionmerupakan interface dari ActionListenerdengan method actionPerformed(ActionEvent).

b. Item, merupakan interface dari ItemListener, dengan method itemStateChange(ItemEvent).

cMouse, merupakan interface daru MouseListener, dengan 5 method:
> mouseClicked(MouseEvent)
> mousePressed(MouseEvent)
> mouseReleased(MouseEvent)
> mouseEntered(MouseEvent)
> mouseExited(MouseEvent)

d. Mouse motion, merupakan interface dari MouseMotionListenerdengan method mouseDragged(MouseEvent)

e. Key, merupakan interface dari KeyListener, dengan 3 method :
> keyPressed(KeyEvent)
> keyReleased(KeyEvent)
> keyTyped(KeyEvent)

f. Focus, merupakan interface dari FocusListener, dengan 2 method :
> focusGained(FocusEvent)
> focusLast(FocusEvent)

d. Window, merupakan interface dari WindowsListener, dengan 4 method :
> windowClosing(WindowEvent)
windowOpened(WindowEvent)
> windowActived(WindowEvent)
> windowDeactived(WindowEvent)

5. Properties


Properties adalah subclass dari Hashtable. Properties digunakan untuk menjaga beberapa daftar value yang dimana key nya adalah String dan value nya juga String. Class properties digunakan oleh beberapa class di Java. Dan juga properties mendefinisikan variabel.

6. Polimorfisme


Polimorfisme adalah kemampuan suatu obyek untuk mempunyai lebih dari satu bentuk. Polimorfisme tidak bergantung kepada pemanggilan subrutin. Metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang berbagai jenis objek yang berbeda selagi program berjalan, dan teks program yang sama dapat memanggil beberapa metode yang berbeda di saat yang berbeda dalam pemanggilan yang sama. Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui penggunaan fungsi kelas-pertama.

7. Inheritance

Inheritance merupakan pewarisan atribut dan method dari sebuah class ke class lainnya. Class yang mewarisi disebut superclass dan Class yang diwarisi disebut subclass. Subclass bisa berlaku sebagai superclass bagi class lainya, disebut sebagai multilevel inheritance.
Contoh : terdapat class sepeda dan sepeda gunung. Sepeda termasuk superclass. Sepeda gunung termasuk subclass. Hal ini dikarenakan sepeda gunung memiliki variabel dan method yang dimiliki oleh sepeda.
Prinsip dasar inheritance yaitu persamaan-persamaan yang dimiliki oleh beberapa kelas dapat digabungkan dalam sebuah class induk sehingga setiap kelas yang diturunkannya memuat hal-hal yang spesifik untuk kelas yang bersangkutan.

Contoh Inheritance
Keuntungan Inheritance
  • Subclass menyediakan state/behaviour yang spesifik yang membedakan dengan superclass, sehingga memungkinkan programmer untuk menggunakan ulang source code dari superclass yang telah ada.
  • Programmer dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class (abstraksi), untuk mendefinisikan class dengan tingkah laku dan state secara umum.
Single & Multiple Inheritance
Bahasa C adalah contoh multiple inheritance. Suatu class diperbolehkan untuk mempunyai lebih dari satu superclass. Variabel dan method yang diwariskan merupakan kombinasi dari superclass-nya. Java adalah contoh single inheritance. Suatu class hanya boleh mempunyai satu superclass.

Multilevel Inheritance
Suatu subclass bisa menjadi superclass bagi class yang lain.

sumber :
www.adityarizki.net
archavesta.wordpress.com
blogjavaj2me.blogspot.com

java_tutorial.pdf

0 comments:

Post a Comment