Minggu, 09 Mei 2010
Konsep oop
Kepanjangan dari Object Oriented Programming, yang dimana didalam pemrograman berorientasi objek data dan instruksi untuk pemrosesan, bagaimana data dikombinasikan menjadi “objek” yang cukup memadai sehingga bisa digunakan pada program lain. Hal terpenting disini adalah objek.
Kepanjangan dari Object Oriented Programming, yang dimana didalam pemrograman berorientasi objek data dan instruksi untuk pemrosesan, bagaimana data dikombinasikan menjadi “objek” yang cukup memadai sehingga bisa digunakan pada program lain. Hal terpenting disini adalah objek.
Objek adalah modul self-contained yang terdiri dari kode pemrogaman yang telah disusun sebelumnya. Modul memuat atau mengkapsulasi baik cabang data, maupun instruksi pemrosesan yang bisa dilakukan pada data tersebut.
Bagaimana data dikirim..?? setelah objek menjadi bagian dari suatu program, instruksi tertentu diaktivasi hanya ketika “message” yang terkait sudah dikirimkan. Message adalah pengiriman peringatan kepada objek ketika operasi yang harus melibatkan objek tertentu dilakukan.
Bagaimana data diproses..?? message cukup mengidentifikasi operasinya. Bagaimana sebenarnya hal itu dilakukan akan disertakan didalam instruksi pemrosesan yang menjadi bagian dari objek. Instruksi pemrosesan ini dinamakan method. Menggunakan kembali blok kode program setelah anda menuliskan satu blok kode program, kode tersebut dapat digunakan kembali pada program-program lainnya. Sehingga, dengan OOP-tidak seperti bahasa pemrograman tradisional lainnya, anda tidak perlu memulai membuat kode program dari awal.
Dibandingkan dengan pemrogaman tradisional lainnya, mempelajari pemrogaman berorintasi objek memakan waktu yang lebih lama karena seperti berpikir dengan cara yang baru. Sekalipun demikian, OOP memilliki keunggulan yaitu objek bisa digunakan berulang-ulang pada aplikasi yang berbeda dan oleh programmer yang berbeda, karena itu waktu pengembanganya pun lebih cepat dan biaya pun bisa berkurang.
Pemrograman berorientasi objek memiliki tiga konsep dasar yang penting,yaitu
enskaplusi, pewarisan, dan polimorfisme.
Misalnya class ORTU mempunyai mempunyai variabel dan method dan diturunkan ke sub classnya (misal: class ANAK). Berarti class ANAK mempunyai semua variabel dan method yang dimiliki oleh class ORTU.
Jadi, dengan pewarisan semua perubahan itu tidak merubah semua objek yang ada, tetapi hanya menambah dan memodifikasi dengan mempertahankan objek (class) yang sudah ada.
Dalam pemrograman berorientasi objek, polimorfisme berarti sebuah pesan (permintaan yang sudah digeneralisasi) memberikan hasil yang berbeda berdasarkan objek yang dikirimkan. Intinya dengan satu baris perintah kita bisa menggunakannya untuk berbagai keperluan. Ilustrasi mudahnya adalah contoh anda perhatikan tombol “Play”, tombol ini pada semua alat mempunyai fungsi yang sama untuk menjalankannya, padahal kalo anda perhatikan tombol “Play” pada remote tv atau radio bahkan vcd mempunyai cara kerja yang berbeda satu sama lain.
Inti Polimorpisme adalah objek yang anda gunakan ini bisa berubah sesuai dengan kondisi yang terjadi. Jadi anda tidak perlu menulis kode program panjang-panjang.
Berikut contoh program java sederhana :
Aturan penulisan program di Java, Java adalah turunan dari C, sehingga Java memiliki sifat C yaitu Case sensitive, yaitu membedakan antara huruf besar dan kecil dalam sebuah file program di Java, hanya diijinkan memiliki 1 buah class yang bersifat public.
Dalam sebuah file program Java, hanya ada satu method main(method yang pertama kali dibaca oleh interpreter Java).
Nama sebuah file program Java harus sama dengan nama class yang memiliki method main() di dalam tubuhnya. Perhatikan bahwa tulisan nama file dengan nama class (huruf besar maupun kecilnya) haruslah persis sama.
Beberapa orang pada awalnya, biasanya tidak memperhatikan perbedaan antara class dan
object. Object adalah sekumpulan software yang terdiri dari variable dan method-method terkait. Class adalah blueprint, atau prototype, yang mendefinisikan variable dan method-method pada seluruh object tertentu. Object saling berinteraksi dengan saling memanggil metode dari satu object ke object lainnya, disebut message. Perhatikan kode berikut :
1 /*Di sini definisikan sebuah class bernama NiceGuy Disimpan sebagai file
NiceGuy.java dan
2 compile file tersebut, maka akan didapat file bernama NiceGuy.class*/
3
4 public class NiceGuy {
5 private String name;
6 public NiceGuy(String name) {
7 System.out.println("Instantiation of NiceGuy named " + name);
8 this.name=name; }
9
10 public void sayHello() {
11 System.out.println("Hello object oriented world..."); }
12
13 public void sayHelloOutLoud() {
14 System.out.println("HELLOOO OBJECT ORIENTED WORLD...."); }
15
16 public String getName( ) {
17 return name; }
18 }
Gambar 1. Definisi class NiceGuy
1 /*Di sini, dibuat sebuah java application yang bernama OurFirstCode.
Simpan source ini
2 dalam file bernama OurFirstCode.java, di direktori yang sama dengan tempat
disimpannya
3 NiceGuy.java. Kemudian compile file tersebut, maka akan didapatkan file
OurFirstCode.class.
4 Lalu jalankan aplikasi ini dengan mengetikan java OurFirstCode pada command line*/
5
6 public class OurFirstCode {
7 public static void main(String[ ] args) {
8 NiceGuy ng= new NiceGuy (“Deitel”);
9 ng.sayHello();
10 ng.sayHelloOutLoud();
11
12 //Mengembalikan nilai yang ada pada ng
13 String NiceGuyName = ng.getName( );
14 System.out.println(“OH…!!!! HE’S “ + NiceGuyName.toUpperCase()); }
15 }
Gambar 2. Aplikasi Java
Gambar 1 merupakan contoh pendefinisian sebuah class bernama NiceGuy. Gambar 2
merupakan kode dari sebuah aplikasi java yang bernama OurFirstCode. Pada aplikasi tersebut digunakan class NiceGuy untuk membuat objek bertipe NiceGuy
PENDEFINISIAN CLASS
Sintaks dalam mendefinisikan class adalah sebagai berikut :
[modifier-modifier] class namaclass [extends parentclass]
[implements interface] {
[deklarasi field-field]
[definisi method-method]
}
Yang tertera didalam kurung siku bersifat optional. Dengan demikian, definisi minimal dari sebuah
class bisa jadi seperti berikut :
class Useless {
//….mmm….
}
Pada Gambar 1, dideklarasikan 1 field dan 3 method yaitu field yang bernama name dengan tipe
string., secara umum sintaks untuk mendeklarasikan field adalah :
type namafield;
Tipe dari field bisa primitif (seperti int, boolean, float, dan sebagainya), dan bisa juga Object
(seperti String, Vector, Hashtable, dan sebagainya). Method-method yang dimiliki class NiceGuy adalah
1. method sayHello() merupakan method void,
2. method sayHelloOutLoud( ) merupakan method void,
3. method getName() merupakan method non-void.
Secara umum sintaks dalam pendefinisian sebuah method adalah :
[modifier-modifier] return-type namamethod
( [parameter1, [parameter2],… , [parameter N] ) {
[statement-statement];
}
Tipe Return bisa void, tipe data primitif, atau tipe data object. Method dengan tipe return non-void harus mencantumkan statement return
[modifier-modifier] namaconstructor ([parameter 1], [parameter 2], …, [parameter N]) {
[statement-statement];
}
Hal lain yang perlu dicatat tentang constructor adalah, nama constructor harus sama dengan class. Constructor tanpa parameter disebut default constructor. Jika constructor sama sekali tidak dideklarasikan, maka compiler secara otomatis akan membuatkan sebuah default constructor.
Pada Gambar 2, aplikasi OurFirstCode memanfaatkan class NiceGuy untuk menciptakan sebuah
objek bertipe NiceGuy dimemori. Setelah itu, reference ng dapat digunakan untuk memanggil methodmethod
(mengirimkan pesan kepadanya) atau mengakses field-field dari objek yang bersangkutan.
Reference adalah seperti alamat rumah sedangkan objek adalah rumahnya. dengan mengetahui
alamat, maka dapat mencapai rumah yang dimaksud.
Array adalah sebuah struktur dari sebuah data yang menyimpan value dari data yang memiliki tipe data yang sama. Setiap value bisa kita akses melalui angka-angka index. index suatu array dimulai dari indeks 0 bukan 1, masih bingung?? begini…
Sebagai contoh jika A merupakan sebuah array dengan tipe integer, maka notasi dari array A adalah: A[n], dengan n merupakan angka index dari array tersebut misal:
A[0]=100
A[1]=200
A[2]=300
A[3]=400
dari array di atas bisa kita simpulkan: array A di atas memiliki tipe data integer(bisa dilihat dari value yang ada), memiliki panjang array 4, array dengan indeks ke-0 memiliki value 100, indeks ke-1 bervalue:200, indeks ke-2 bervalue:300…dst… mudah bukan…:)
Array dalam java
Dalam pemograman java, pendeklarasian suatu array bisa ditulis dalam bentuk:
int [ ] b;
statemen diatas hanya mendeklarasikan variabel b sebagai variabel bertipe array integer, untuk membuat(construct) array kita tulis dengan menggunakan operator ‘new’ seperti contoh berikut:
int [ ] a = new int[20];
statement diatas berarti telah dibuat array dengan nama a bertipe integer dan memiliki kapasitas 100 value, ingat indeks mulai dari 0 – 99, tidak ada indeks ke-100 (a [100]).
#bila kita paksakan mengakses indeks ke [100] maka akan muncul exception “array index out of bounds”.#
dalam pengisian value sebuah array kita bisa lakukan dengan melakukan metode looping seperti:
int [ ] a = new int[100];
for (int i = 0 ; i < 100 ; i++)
a [ i ] = i; // isi array a dengan value 0 – 99
untuk mengetahui ukuran / panjang dari suatu array, kita gunakan syntaks: namaaray.length
contoh : System.out.println(a.length); akan mencetak ukuran dari array a, yaitu sebanyak 100.
contoh pengisian array dengan menggunakan looping:
for (int i = 0 ; i < a.length ; i++)
System.out.println(a [ i ]);
Selengkapnya...
kepanjangan dari Object Oriented Programming, yang dimana didalam pemrograman berorientasi objek data dan instruksi untuk pemrosesan, bagaimana data dikombinasikan menjadi “objek” yang cukup memadai sehingga bisa digunakan pada program lain. Hal terpenting disini adalah objek. kepanjangan dari Object Oriented Programming, yang dimana didalam pemrograman berorientasi objek data dan instruksi untuk pemrosesan, bagaimana data dikombinasikan menjadi “objek” yang cukup memadai sehingga bisa digunakan pada program lain. Hal terpenting disini adalah objek.
Objek adalah modul self-contained yang terdiri dari kode pemrogaman yang telah disusun sebelumnya. Modul memuat atau mengkapsulasi baik cabang data, maupun instruksi pemrosesan yang bisa dilakukan pada data tersebut.
Bagaimana data dikirim..?? setelah objek menjadi bagian dari suatu program, instruksi tertentu diaktivasi hanya ketika “message” yang terkait sudah dikirimkan. Message adalah pengiriman peringatan kepada objek ketika operasi yang harus melibatkan objek tertentu dilakukan.
Bagaimana data diproses..?? message cukup mengidentifikasi operasinya. Bagaimana sebenarnya hal itu dilakukan akan disertakan didalam instruksi pemrosesan yang menjadi bagian dari objek. Instruksi pemrosesan ini dinamakan method. Menggunakan kembali blok kode program setelah anda menuliskan satu blok kode program, kode tersebut dapat digunakan kembali pada program-program lainnya. Sehingga, dengan OOP-tidak seperti bahasa pemrograman tradisional lainnya, anda tidak perlu memulai membuat kode program dari awal.
Dibandingkan dengan pemrogaman tradisional lainnya, mempelajari pemrogaman berorintasi objek memakan waktu yang lebih lama karena seperti berpikir dengan cara yang baru. Sekalipun demikian, OOP memilliki keunggulan yaitu objek bisa digunakan berulang-ulang pada aplikasi yang berbeda dan oleh programmer yang berbeda, karena itu waktu pengembanganya pun lebih cepat dan biaya pun bisa berkurang.
Tiga Konsep OOP
Pemrograman berorientasi objek memiliki tiga konsep dasar yang penting, yaitu enskaplusi, pewarisan, dan polimorfisme.
Enkapsulasi berarti objek memuat data dan instruksi pemrosesan yang relevan. Setelah objek dibuat, objek dapat digunakan kembali untuk program lain. Pemahaman mudahnya kita ambil satu contoh : Kalkulator, yang anda tau mempunyai fungsi untuk berhitung, waktu anda membeli kalkulator tentunya anda hanya memilih kualitas kalkulator yang bagus, itu yang terpenting. Anda tidak perduli bagaimana cara rangkaian mesin digital yang bekerja didalam kalkulator itu. Intinya kita hanya perlu tau apa kegunaannya, bagaimana cara memakainya dan hasilnya apa.
setelah mencipatakan sebuah objek. Anda dapat menggunakanya sebagai fondasi untuk objek yang sama yang memilliki perilaku atau karakteristik sama. Semua objek berasal dari atau yang saling berhubungan bisa membntuk suatu kelas. Masing-masing kelas memuat instruksi khusus (method) yang unik untuk kelompok tersebut.
Pewarisan (inheritance), setelah mencipatakan sebuah objek. Anda dapat menggunakannya sebagai fondasi untuk objek yang sama yang memilliki perilaku atau karakteristik sama. Semua objek berasal dari atau yang saling berhubungan yang bisa membentuk suatu class. Masing-masing kelas memuat instruksi khusus (method) yang unik untuk kelompok tersebut.
intinya adalah mengembangkan class yang sudah ada. Jadi anda tidak perlu membuat dari awal lagi, class yang sudah ada bisa dimodifikasi dan/atau ditambah fungsinya sesuai dengan kebutuhan. Contoh mudahnya adalah apabila anda mempunyai handphone, mungkin dulu hp anda hanya sebatas bisa telpon dan sms saja, setelah ditambah atau dimodifikasi sekarang hp anda sudah bisa untuk akses internet atau bermain game.
Jadi, dengan pewarisan semua perubahan itu tidak merubah semua objek yang ada, tetapi hanya menambah dan memodifikasi dengan mempertahankan objek (class) yang sudah ada.
Polimorfisme, Dalam pemrograman berorientasi objek, polimorfisme berarti sebuah pesan (permintaan yang sudah digeneralisasi) memberikan hasil yang berbeda berdasarkan objek yang dikirimkan. Intinya dengan satu baris perintah kita bisa menggunakannya untuk berbagai keperluan. Ilustrasi mudahnya adalah contoh anda perhatikan tombol “Play”, tombol ini pada semua alat mempunyai fungsi yang sama untuk menjalankannya, padahal kalo anda perhatikan tombol “Play” pada remote tv atau radio bahkan vcd mempunyai cara kerja yang berbeda satu sama lain.
Inti Polimorpisme adalah objek yang anda gunakan ini bisa berubah sesuai dengan kondisi yang terjadi. Jadi anda tidak perlu menulis kode program panjang-panjang.
Berikut contoh program java sederhana :
Aturan penulisan program di Java, Java adalah turunan dari C, sehingga Java memiliki sifat C yaitu Case sensitive, yaitu membedakan antara huruf besar dan kecil dalam sebuah file program di Java, hanya diijinkan memiliki 1 buah class yang bersifat public.
Dalam sebuah file program Java, hanya ada satu method main(method yang pertama kali dibaca oleh interpreter Java).
Nama sebuah file program Java harus sama dengan nama class yang memiliki method main() di dalam tubuhnya. Perhatikan bahwa tulisan nama file dengan nama class (huruf besar maupun kecilnya) haruslah persis sama.
------Pewarisan------
Pewarisan adalah keuntungan besar dalam pemrograman berbasis object karena suatu sifat atau method didefinisikan dalam superclass, sifat ini secara otomatis diwariskan dari semua subclasses. Jadi, kode method dapat dituliskan hanya sekali dan dapat digunakan oleh semua subclass. Subclass hanya butuh mengimplementasikan perbedaannya sendiri dan induknya.
Misalnya class ORTU mempunyai mempunyai variabel dan method dan diturunkan ke sub classnya (misal: class ANAK). Berarti class ANAK mempunyai semua variabel dan method yang dimiliki oleh class ORTU.
Contoh gambar Pewarisan
------Array ------
Array adalah sebuah struktur dari sebuah data yang menyimpan value dari data yang memiliki tipe data yang sama. Setiap value bisa kita akses melalui angka-angka index. index suatu array dimulai dari indeks 0 bukan 1, masih bingung?? begini…
Sebagai contoh jika A merupakan sebuah array dengan tipe integer, maka notasi dari array A adalah: A[n], dengan n merupakan angka index dari array tersebut misal:
A[0]=100
A[1]=200
A[2]=300
A[3]=400
dari array di atas bisa kita simpulkan: array A di atas memiliki tipe data integer(bisa dilihat dari value yang ada), memiliki panjang array 4, array dengan indeks ke-0 memiliki value 100, indeks ke-1 bervalue:200, indeks ke-2 bervalue:300…dst… mudah bukan…:)
Array dalam java
Dalam pemograman java, pendeklarasian suatu array bisa ditulis dalam bentuk:
int [ ] b;
statemen diatas hanya mendeklarasikan variabel b sebagai variabel bertipe array integer, untuk membuat(construct) array kita tulis dengan menggunakan operator ‘new’ seperti contoh berikut:
int [ ] a = new int[20];
statement diatas berarti telah dibuat array dengan nama a bertipe integer dan memiliki kapasitas 100 value, ingat indeks mulai dari 0 – 99, tidak ada indeks ke-100 (a [100]).
#bila kita paksakan mengakses indeks ke [100] maka akan muncul exception “array index out of bounds”.#
dalam pengisian value sebuah array kita bisa lakukan dengan melakukan metode looping seperti:
int [ ] a = new int[100];
for (int i = 0 ; i < 100 ; i++)
a [ i ] = i; // isi array a dengan value 0 – 99
untuk mengetahui ukuran / panjang dari suatu array, kita gunakan syntaks: namaaray.length
contoh : System.out.println(a.length); akan mencetak ukuran dari array a, yaitu sebanyak 100.
contoh pengisian array dengan menggunakan looping:
for (int i = 0 ; i < a.length ; i++)
System.out.println(a [ i ]);
Selengkapnya...
Sabtu, 24 April 2010
-----KONSEP OOP-----OOP kepanjangan dari Object Oriented Programming, yang dimana didalam pemrograman berorientasi objek data dan instruksi untuk pemrosesan, bagaimana data dikombinasikan menjadi “objek” yang cukup memadai sehingga bisa digunakan pada program lain. Hal terpenting disini adalah objek.