Selasa, 24 Desember 2013

Class dan Object

1. Pengertian class

Class berbeda dengan object, sebagai analogi, di dunia ini tidak ada seorang manusia yang sama persis. Namun pada sisi lain seluruh manusia di dunia digolongkan ke dalam kelompok hom sapiens. Homo sapiens merupakan class, sedangkan manusia adalah objek homo sapiens.
Class merupakan prototype yang mendefinisikan variabel dan metode secara umum. Pada sisi lain, objek merupakan instanisasi suatu class. Contohnya adalah class sepeda. Class sepeda pasti memiliki roda, peda dan gigi serta memiliki fungsi seperti memutar kemudi, mengubah gigi dan lain-lain. Secara umum, class dapat digambarkan seperti gambar dibawah ini.

Untuk lebih jelasnya perhatikan kode program dibawah ini:
Selanjutnya kita juga
membuat 2 buah behavior (method) yaitu ubah_kecepatan dan ubah gigi. Kedua method tersebut tidak memiliki nilai kembalian maka dideklarasikan dengan menggunakan keyword void. Untuk class dapat bekerja maka kita harus membuat objek dari class sepeda tersebut.
outputnya:
2. Enkapsulasi
Enkapsulasi merupakan pembungkusan variabel  dan metode dalam sebuah objek. Enkapsulasi
memungkinkan seseorang melakukan sesuatu tanpa harus mengetahui detail informasi.Manfaat enkapsulasi adalah:
1.Modularity, yaitu memecah-mecah sesuatu yang kompleks menjadi bagian kecil yang
    lebih mudah dikelola
2.Information hiding, yaitu menyembunyikan informasi yang tidak perlu diketahui oleh
   objek lain
contoh program:
Pada kode diatas kita telah mengubah access merek_sepeda menjadi private, sehingga hanya class sepeda yang dapat mengakses variabel merek_sepeda tersebut.Sebenarnya pada method setMerekSepeda kita dapat menambahkan kode kode yang lebih detail mengenai merek sepeda, namun pada saa kita menampilkan mereksepeda pada method getMerekSepeda, objek hanya mendapat informasi
mengenai merek sepeda. Sehingga detail informasi mengenai merek  sepeda telah berhasil kita
sembunyikan. Selanjutnya kita menambahkan objek berdasarkan class sepeda tersebut.
outputnya:
3. Polymorphism
Polymorphism merupakan kemampuan memnyembunyikan berbagai implementasi berbeda di belakang antarmuka (banyak bentuk). Sebagai  contoh, ketika akan menghitung luas berbagaibentuk misalnya, segi empat, lingkaran, dan segitiga kita dapat menggunakan teknik polymorphism
luas_lingkaran=3.14 * jari * jari
luas_segiempat=panjang * lebar
luas_segitiga=0.5 * tinggi * alas
untuk menangani masalah, kita dapat membuat  class sesuai dengan kebutuhan setiap rumus matematika yang ada. Dalam setiap class, kita dapat membuat sebuah metode untuk menghitung luas, misalnya hitugluas()
outputnya:

Pada potongan kode diatas kita membuat sebuah class bangunGeometri dimana terdapat dua buah method dengan nama yang sama, namun parameter yang dibutuhkan berbeda, yaitu public double luas (int jari_jari) dan public double luas (int panjang, int lebar).

4. Inheritance
Secara prinsip inheritance adalah pembuatan sebuah class baru berdasarkan class yang sudah ada dengan fungsi yang lebih dikembangkan. Semua method dan variabel yang diset sebagai public atau protected dapat digunakan oleh inherited class (class yang  diwariskan).
kemudian di bawah program pertama buat program seperti di bawah ini:
outputnya:











0 komentar:

Posting Komentar