bab 1 - kegiatan belajar 1 - paradigma pemrograman berorientasi objek

6
15 BAB I PENGENALAN JAVA BAB I PARADIGMA PEMROGRAMAN BERORIENTASI OBJEK PENDAHULUAN Paradigma pemrograman berorientasi objek merupakan cara pandang pemrograman yang memandang segala sesuatunya dalam bentuk suatu objek yang mana memiliki state dan behaviour. Terdapat 3 (tiga) konsep pemrograman berorientasi objek, yaitu enkapsulasi, pewarisan, dan polimorfisme. KEGIATAN BELAJAR 1 PARADIGMA PEMROGRAMAN BERORIENTASI OBJEK Hasil Pembelajaran Setelah menyelesaikan bahasan ini dan mengerjakan soal-soal latihan yang ada, Anda dapat : 1. Menjelaskan abstraksi dalam paradigma pemrograman berorientasi objek 2. Menjelaskan enkapsulasi dalam paradigma pemrograman berorientasi objek 3. Menjelaskan pewarisan dalam paradigma pemrograman berorientasi objek 4. Menjelaskan polimorfisme paradigma pemrograman berorientasi objek 5. Mengenal state dan behavior. Kriteria Penilaian Keberhasilan Anda dalam menguasai bab ini diukur berdasarkan kriteria kemampuan sebagai berikut : 1. Membuat abstraksi dari suatu permasalahan sehingga dapat diterjemahkan ke dalam bahasa pemrograman berorientasi objek 2. Menjelaskan perbedaan enkapsulasi, pewarisan dan polimorfisme dalam paradigma pemrograman berorientasi objek 3. Men Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Upload: nicole-robinson

Post on 08-Aug-2015

118 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

15 BAB I PENGENALAN JAVA

BAB I

PARADIGMA PEMROGRAMAN BERORIENTASI OBJEK

PENDAHULUAN

Paradigma pemrograman berorientasi objek merupakan cara pandang

pemrograman yang memandang segala sesuatunya dalam bentuk suatu objek yang

mana memiliki state dan behaviour. Terdapat 3 (tiga) konsep pemrograman

berorientasi objek, yaitu enkapsulasi, pewarisan, dan polimorfisme.

KEGIATAN BELAJAR 1

PARADIGMA PEMROGRAMAN BERORIENTASI OBJEK

Hasil Pembelajaran

Setelah menyelesaikan bahasan ini dan mengerjakan soal-soal latihan yang ada,

Anda dapat :

1. Menjelaskan abstraksi dalam paradigma pemrograman berorientasi objek

2. Menjelaskan enkapsulasi dalam paradigma pemrograman berorientasi objek

3. Menjelaskan pewarisan dalam paradigma pemrograman berorientasi objek

4. Menjelaskan polimorfisme paradigma pemrograman berorientasi objek

5. Mengenal state dan behavior.

Kriteria Penilaian

Keberhasilan Anda dalam menguasai bab ini diukur berdasarkan kriteria

kemampuan sebagai berikut :

1. Membuat abstraksi dari suatu permasalahan sehingga dapat diterjemahkan ke

dalam bahasa pemrograman berorientasi objek

2. Menjelaskan perbedaan enkapsulasi, pewarisan dan polimorfisme dalam

paradigma pemrograman berorientasi objek

3. Men

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Page 2: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

16 BAB I PENGENALAN JAVA

Sumber Pustaka

1. Abdul Kadir, 2005, Dasar Pemrograman Java™ 2, Andi, Yogyakarta.

2. Herbert Schildt, 2005, Java™ : A Beginner’s Guide, Third Edition, McGraw-

Hill/Osborne, United States of America.

3. Herbert Schildt, Patrick Naughton , 1999, Java™ 2 : The Complete Reference,

Fourth Edition, McGraw-Hill/Osborne, United States of America.

4. Indrajani, S.Kom., MM., Martin, S.Kom., 2007, Pemrograman Berorientasi

Objek dengan Bahasa Java, PT. Elex Media Komputindo, Jakarta.

1.7. Paradigman Pemrograman Berorientasi Objek 1.7.1. Abstraksi

Elemen penting dari pemrograman berorientasi objek adalah abstraksi.

Manusia menangani kompleksitas melalui abstraksi. Abstraksi adalah suatu cara

dimana kita melihat suatu objek dalam bentuk yang lebih sederhana. Sebagai

contoh, kita tidak berpikir bahwa sebuah mobil adalah sebagai kumpulan dari

puluhan atau ribuan komponen elektronik, 4 (empat) buah bean, besi, jok, stir

kemudi, dan lain sebagainya yang dibuat sedemikian rupa sehingga dinamakan

mobil. Abstraksi ini mengijinkan kita untuk dapat mengendarai mobil tanpa harus

mengetahui secara detail bagaimana mesin, transmisi, dan sistem pengereman

bekerja. Dengan demikian, kita tidak melihat bagian-bagian dari sebuah mobil

sebagai suatu bagian berdiri sendiri, tetapi sebagai satu kesatuan.

Untuk dapat membuat suatu abstraksi yang baik, kita dapat melakukan

klasifikasi secara hirarki. Hal ini mengijinkan kita untuk menguraikan sistem yang

kompleks menjadi subsistem. Kita melihat sebuah mobil sebagai suatu objek yang

terdiri dari beberapa subsistem, yaitu : subsistem kemudi, subsistem pengereman,

sound system, subsistem pengapian, dan lainnya. Subsistem ini dibentuk dari unit

yang lebih spesifik. Sebagai contoh, sound system terdiri dari radio, CD Player,

dan atau tape player. Masing-masing subsistem memiliki karakteristik yang unik,

namun saling berinteraksi dan bekerja sama membentuk suatu satu kesatuan

objek, yaitu sebuah mobil.

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Page 3: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

17 BAB I PENGENALAN JAVA

Pemahaman abstraksi yang memandang segala sesuatu sebagai suatu objek,

dapat menjadi dasar untuk memahami pemrograman berorientasi objek (Object

Oriented Programming) dan dapat mentransformasikan suatu objek menjadi suatu

program komputer. Setiap objek selalu memiliki suatu keadaan (state) dan tingkah

laku (behavior) atau aksi yang dapat melakukan perubahan terhadap state.

Sebagai contoh, objek manusia memiliki state, yaitu : tinggi badan, berat badan,

umur, warna rambut, dan lainnya. Manusia juga memiliki behavior, yaitu : makan,

minum, berjalan, berlari, tidur, menangis, dan lainnya. Implementasi pada bahasa

pemrograman Java, state akan lebih dikenal dengan nama attribute atau properties

atau field, sedangkan behavior akan dikenal dengan nama method.

Semua bahasa pemrograman berorientasi objek menyediakan mekanisme

yang membantu programmer untuk mengimplementasikan model berorientasi

objek. Mekanisme tersebut dituangkan dalam bentuk konsep, yaitu Enkapsulasi

(Encapsulation), Pewarisan (Inhertance), dan Polimorfisme (Polymorphism).

1.7.2. Enkapsulasi (Encapsulation)

Enkapsulasi adalah suatu mekanisme yang membungkus kode dan data serta

menyembunyikan dan memproteksi keduanya, agar aman dari penyalahgunaan

dan interfensi dari luar sistem. Akses terhadap kode dan data internal dari luar

sistem dapat dilakukan dengan cara melalui suatu interface yang telah ditetapkan.

Berdasarkan contoh kasus mobil yang telah diuraikan sebelumnya, bayangkan

sistem transmisi yang ada pada mobil tersebut. Sistem transmisi ini

menyembunyikan detail dari cara kerjanya terhadap pengemudi. Pengemudi hanya

cukup memindahkan tongkat transmisi untuk mendapatkan percepatan yang

diinginkan. Tongkat transmisi inilah satu-satunya interface yang dapat digunakan

untuk mengatur sistem transmisi dalam mobil. Interface lain seperti pedal rem

tidak akan dapat mengatur sistem transmisi yang ada. Interface tongkat transmisi

juga tidak akan dapat digunakan untuk menghidupkan radio mobil dan

mengaturnya ke frekuensi tertentu, atau pun membuka pintu mobil.

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Page 4: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

18 BAB I PENGENALAN JAVA

1.7.3. Pewarisan (Inheritance)

Konsep berorientasi objek mengenalkan kepada kita suatu istilah yaitu

kelas. Kelas merupakan suatu template atau cetakan yang dapat digunakan untuk

membuat objek maupun kelas yang baru dan lebih spesifik. Berdasarkan hal

inilah, timbul suatu konsep yang dinamakan pewarisan. Pewarisan merupakan

suatu mekanisme yang mana suatu kelas dapat diturunkan lagi menjadi kelas

lainnya, sehingga kelas turunannya memiliki ciri atau sifat atau karakteristik yang

dimiliki oleh kelas asalnya. Kelas-kelas ini dapat digambarkan dalam bentuk

hirarki seperti pada contoh gambar berikut ini :

Gambar 1.6 Contoh Hirarki Kelas

Berdasarkan gambar 1.6 di atas, dapat dilihat bahwa semakin ke atas, kelas

akan bersifat semakin umum. Semakin ke bawah, kelas menjadi semakin lebih

spesifik. Kelas Invertebrata dan Vertebrata memiliki sifat yang dimiliki oleh

kelas Hewan, demikian juga halnya kelas Cacing, Ular, dan Lintah memiliki

sifat yang diturunkan dari kelas Invertebrata. Kelas Invertebrata dan

Vertebrata dapat memiliki sifat baru yang tidak dimiliki oleh kelas Hewan.

Begitu pula kelas Cacaing, Ular, dan Lintah dapat memiliki sifat baru yang tidak

dimiliki oleh kelas Invertebrata.

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Page 5: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

19 BAB I PENGENALAN JAVA

1.7.4. Polimorfisme (Polymorphism)

Polymorphism berasal dari bahasa Yunani yang berarti “banyak bentuk”.

Polymorphism merupakan fitur yang mengijinkan banyak objek memiliki

interface yang sama untuk melakukan suatu aksi tertentu, namun dalam

implementasinya, aksi yang dilakukan menyesuaikan dengan masing-masing

objek. Sebagai contoh, Manusia, Kucing, dan Kera sama-sama memiliki aksi

berjalan namun implementasinya berbeda-beda.

Contoh lain adalah indra penciuman Anjing sebagai polimorfik. Jika Anjing

mencium bau kucing, maka Ia akan menggonggong dan mengejar kucing tersebut.

Jika Anjing mencium bau makanan, maka Ia akan berliur dan mencarinya. Indra

penciuman Anjing bekerja dalam situasi yang berbeda. Perbedaan itu adalah apa

yang dicium oleh Anjing, yaitu tipe bau yang dioperasikan oleh hidung Anjing.

Dengan konsep yang sama, polymorphism dapat diimplementasikan pada Java,

yaitu sebagai method dari suatu program Java.

Rangkuman 1. Abstraksi adalah suatu cara dimana kita melihat suatu objek dalam bentuk

yang lebih sederhana.

2. Pewarisan merupakan suatu mekanisme yang mana suatu kelas dapat

diturunkan lagi menjadi kelas lainnya, sehingga kelas turunannya memiliki

ciri atau sifat atau karakteristik yang dimiliki oleh kelas asalnya.

3. Enkapsulasi adalah suatu mekanisme yang membungkus kode dan data serta

menyembunyikan dan memproteksi keduanya, agar aman dari

penyalahgunaan dan interfensi dari luar sistem.

4. Polymorphism merupakan fitur yang mengijinkan banyak objek memiliki

interface yang sama untuk melakukan suatu aksi tertentu, namun dalam

implementasinya, aksi yang dilakukan menyesuaikan dengan masing-masing

objek.

5. Paradigma berorientasi objek merupakan cara pandang yang memandang

segala sesuatu itu adalah sebagai objek, dimana setiap objek selalu memiliki

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

Page 6: BAB 1 - Kegiatan Belajar 1 - Paradigma Pemrograman Berorientasi Objek

20 BAB I PENGENALAN JAVA

Suheri, ST – Pemrograman 3 (Pemrograman Berorientasi Objek)

suatu keadaan (state) dan tingkah laku (behavior) atau aksi yang dapat

melakukan perubahan terhadap state.

Soal-soal Latihan Buatlah abstraksi dari suatu sistem komputer, dan tentukan state dan behavior-

nya!