Kamis, 29 April 2010

JAVA JOB

Konsep OOP

class - 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.

Objek

Dalam dunia nyata ataupun dalam sebuah program, sebuah objek memiliki dua karakteristik yaitu state dan behaviour. State adalah keadaan dari sebuah objek, seperti mobil memiliki state warna, model, tahun pembuatan, kondisi, dll. Sedang behaviour adalah kelakuan dari objek tersebut, seperti mobil dapat melaju, membelok, membunyikan klakson, dll. Objek menyimpan statenya dalam satu atau lebih variabel, dan mengimplementasikan behaviournya dengan metode. Dengan adanya penjelasan di atas, dapat disimpulkan bahwa objek adalah bagian software yang dibentuk dengan variabel-variabel dan metode-metode yang berhubungan dengan variabel tersebut.
Sebuah objek yang dibentuk dari sebuah kelas biasa disebut instans dalam terminologi OOP. Artinya objek tersebut adalah wujud nyata dari sebuah kelas. Variabel dan metode dari instans ini disebut variabel instans dan metode instans. Setiap instans menyimpan variabelnya sendiri-sendiri, jadi nilai variabel untuk tiap instans bisa berbeda.

Class Dan Atribut

Class adalah cetak biru atau rancangan dari sebuah object. Object adalah instansiasi atau perwujudan dari sebuah class, sebuah class dapat di instan menjadi satu atau lebih object, sebuah class tidak dapat digunakan untuk menyimpan, memanipulasi dan menampilkan data. Kita bisa melakukan proces-proses tersebut terhadap object.

Didalam class terdapat atribut atribut. Atribut adalah segala sesuatu yang berhubungan dengan objek. Misal didalam class rumah yang didalamnya maka atribut atributnya adalah kayunya, warnanya, pintunya, teras, luas dll.

Sedangkan Metohode adalah hal hal yang dapat dilakukan oleh class, dalam pemrogaman prosecural methode dapat diartikan sebagai f uction atau procedure. dalam contoh class rumah diatas, methodenya adalah tempat bernaung.

Package

Dalam rangka manajemen class, class-class yang secara fungsional sejenis bisa dikelompokkan kedalam suatu wadah atau kedalam suatu folder. ada banyak package bawaan java, sepeti java.awt, javax.swing. java.io, java.util. Namun demikian user diperbolehkan untuk membuat package sendiri. isi dari sebuah packagw adalah semua file class yang siap pakai.

Pewarisan

Terminologi asing untuk pewarisan adalah inheritance. Mungkin dalam literatur lain kita akan sering menjumpai istilah ini. Secara gamblang, pewarisan berarti sebuah kelas mewarisi state dan behaviour dari kelas lain. Sebagai contoh, sebuah kelas RumahMewah akan mewarisi state dan behaviour dari kelas Rumah. Begitu juga dengan kelas RumahSederhana. Kelas RumahMewah dan RumahSederhana disebut subkelas, atau kelas anak, dari kelas Rumah, yang disebut superkelas, atau kelas induk. Seluruh subkelas akan mewarisi (inherits) state dan behaviour dari superkelasnya. Dengan begitu, semua subkelas dari superkelas yang sama akan memiliki state dan behaviour yang sama. Namun, masing-masing subkelas bisa menambah sendiri state atau behaviournya.

Dalam kasus tertentu subkelas mungkin memiliki implementasi behaviour yang berbeda dengan superkelasnya. Hal seperti ini disebut override. Tingkat pewarisan tidak hanya terbatas pada dua tingkatan. Kita bisa terus memperpanjang tingkat pewarisan ini sepanjang yang kita butuhkan. Dengan begitu, subkelas-subkelas yang dibuat akan lebih khusus dan lebih terspesialisasi. Namun terdapat batasan pewarisan dalam Java yang disebut single inheritance. Artinya sebuah kelas hanya dapat mewarisi sifat dari satu dan hanya satu superkelas saja. Dalam beberapa bahasa pemrograman berorientasi objek lain, yang berlaku adalah multiple inheritance. Artinya sebuah kelas dapat mewarisi sifat dari beberapa superkelas sekaligus.

Dalam Java, terdapat kelas Object yang merupakan superkelas dari semua kelas dalam Java, baik yang builtin ataupun yang kita buat sendiri, lansung maupun tidak langsung. Karena itu sebuah variabel bertipe Object akan dapat menyimpan referensi ke objek apapun dalam bahasa Java. Kelas Object ini memiliki behaviour yang dibutuhkan semua objek untuk dapat dijalankan di Java Virtual Machine. Manfaat penggunaan konsep pewarisan antara lain: pertama, kita dapat menggunakan kembali kelas-kelas yang kita buat (sebagai superkelas) dan membuat kelas-kelas baru berdasar superkelas tersebut dengan karakteristik yang lebih khusus dari behaviour umum yang dimiliki superkelas. Kedua, kita dapat membuat superkelas yang hanya mendefinisikan behaviour namun tidak memberi implementasi dari metode-metode yang ada. Hal ini berguna jika kita ingin membuat semacam template kelas. Kelas semacam ini disebut kelas abstrak, karena behaviournya masih abstrak dan belum diimplementasikan. Subkelas-subkelas dari kelas semacam ini, yang disebut kelas konkret, mengimplementasikan behaviour abstrak tersebut sesuai dengan kebutuhan masing-masing.

F. Polimorfisme

Polimorfisme secara bahasa dapat diartikan memiliki banyak bentuk. Konsep ini terdapat dalam bahasa pemrograman seperti konstruktor yang memiliki beberapa bentuk. Selain konstruktor, konsep ini juga berlaku bagi metode. Metode atau konstruktor dapat memiliki banyak bentuk dalam arti memiliki nama yang sama namun dengan argumen yang berbeda atau dengan return type yang berbeda.

Array

Program yang cukup besar pasti membutuhkan banyak variable. kita bisa saja mendeklarasikan variable tersebut satu per satu. misalkan kita membutuhkan 5 variable dengan tipe integer, kita bisa mendeklarasikanya dengan int a , b, c, d, e;. ini masih sangat kecil, bagaimana kalau kita membutuhkan 100 variable ? ini pasti jadi tidak efisien. maka kita bisa menggunakan array.

Tetapi sebelum kita memutuskan untuk mengggunakan array, kita juga harus meneliti apakah data data tersebut akan di akses secara berurut? jika ya maka kita bisa menggunakan array, tapi data data tersebut tidak akan diakses secara berurut, sebaiknya di deklarasikan sendiri sendiri.

Cara mendeklarasikan array :

int [] arr = new int[10];

Hak Akses

OOP memberikan beberapa tipe hak akses terhadap variable (atribut), methode bahkan class. Tipe tipe hak akses tersebut yaitu Public, Private, atau Protected. Ini adalah salah satu bagian terpenting dari OOP, sehingga programmer yang hendak belajar OOP wajib memahami konsep pengaksesan data ini dalam OOP.

Tidak ada komentar:

Posting Komentar