Pemrograman Berorientasi Objek (JAVA)
Pemrograman Berorientasi Objek (PBO)
OOP/PBO merupakan paradigma pemrograman
yang popular saat ini yang telah menggantikan teknik pemrograman
berbasis prosedur. Object Oriented Programing yang berarti pula
Pemrograman Beorientasi Objek sudah ditemukan sekitar tahun 1960 dan
dikembangkan pada permulaan tahun 1970.
Pemrograman Berorientasi Objek (Object Oriented Programming/OOP) merupakan pemrograman yang berorientasikan kepada objek, dimana semua data dan fungsi dibungkus dalam class-class atau object-object. Setiap object dapat menerima pesan, memproses data, mengirim, menyimpan dan memanipulasi data. Beberapa object berinteraksi dengan saling memberikan informasi satu terhadap yang lainnya.
Pemrograman Berorientasi Objek (Object Oriented Programming/OOP) merupakan pemrograman yang berorientasikan kepada objek, dimana semua data dan fungsi dibungkus dalam class-class atau object-object. Setiap object dapat menerima pesan, memproses data, mengirim, menyimpan dan memanipulasi data. Beberapa object berinteraksi dengan saling memberikan informasi satu terhadap yang lainnya.
Masing-masing object harus
berisikan informasi mengenai dirinya sendiri dan dapat dihubungkan
dengan Object yang lain. Pemrograman berorientasi objek berbeda dengan
pemrograman prosedural yang hanya menggunakan satu halaman kebawah untuk
mengerjakan banyak perintah atau statement. Penggunaan pemrograman
berorientasi objek sangat benyak sekali, contoh : java, php, perl, c#,
cobol, dan lainnya.
Java menggunakan Pemrograman Berorientasi Objek (PBO) atau istilah “keren” atau bahasa Inggrisnya adalah Object Oriented Programming (OOP). PBO memiliki gaya pemrograman yang membuat si programmer berpikir lebih mudah/simpel dan berpikir tentang objek – objek di dunia nyata.
Dalam PBO, setiap objek adalah sebuah unit yang bebas dengan identitas unik, seperti objek pada umumnya di dunia.
Contoh:
Sebuah apel adalah sebuah objek, sebuah cangkir juga adalah sebuah objek. Setiap dari mereka mempunyai identitas yang unik. Memang mungkin saja kita melihat cangkir yang identik, tapi tetap saja mereka terpisah. Itulah yang dikatakan objek yang unik.
Objek juga mempunyai karakteristik yang digunakan untuk mendeskripsikan objek tersebut.
Contoh:
Dalam PBO, setiap objek adalah sebuah unit yang bebas dengan identitas unik, seperti objek pada umumnya di dunia.
Contoh:
Sebuah apel adalah sebuah objek, sebuah cangkir juga adalah sebuah objek. Setiap dari mereka mempunyai identitas yang unik. Memang mungkin saja kita melihat cangkir yang identik, tapi tetap saja mereka terpisah. Itulah yang dikatakan objek yang unik.
Objek juga mempunyai karakteristik yang digunakan untuk mendeskripsikan objek tersebut.
Contoh:
- Mobil berwarna merah atau biru
- Mangkok bisa terisi penuh atau juga bisa kosong, dan lain sebagainya.
Merah atau biru, penuh atau kosong adalah karakteristik dari objek. Karakteristik objek ini juga dapat disebut atribut. Sebuah atribut menjelaskan tentang objek tersebut.
Di dunia nyata, objek – objek juga punya tingkah laku seperti yang dijelaskan pada contoh berikut:
Contoh:
- Mobil dapat bergerak
- Telepon dapat berbunyi
- Burung bisa terbang, dan lain sebagainya.
Singkatnya, pada Pemrograman Berorientasi Objek, setiap objek mempunyai 3 dimensi, yaitu:
- Identitas
- Atribut
- Tingkah laku
- Identitas
- Atribut
- Tingkah laku
Mengetahui fungsi Kelas (.class)
Kelas adalah struktur dasar dalam PBO. Kelas dapat didefenisikan sebagai blueprint, deskripsi atau definisi untuk sebuah objek. Kamu dapat menggunakan kelas yang sama sebagai sebuah blueprint untuk menciptakan objek yang banyak.
Kelas adalah struktur dasar dalam PBO. Kelas dapat didefenisikan sebagai blueprint, deskripsi atau definisi untuk sebuah objek. Kamu dapat menggunakan kelas yang sama sebagai sebuah blueprint untuk menciptakan objek yang banyak.
Setiap kelas mempunyai sebuah nama, kemudian kelas juga punya tipe.
Kelas terdiri dari 2 tipe yaitu:
- Atributte (field/properti) dan
- Behavior (method).
Atributte merupakan tipe data yang didefinisikan oleh class, sedangkan behavior merupakan operasi.
Berikut adalah contoh perbedaan dari atribut dan tingkah laku:
Atribut:
- Nama
- Tinggi
- Berat
- Jenis kelamin
- Umur
Tingkah laku:
- Berjalan
- Berlari
- Melompat
- Berbicara
- Tidur
Cara mendeklarasikan kelas
Berikut cara mendeklarasikan kelas pada Java:
a. Kelas sederhana
Class namaKelas{
classBody
}
b. Kelas yang memiliki struktur anatomi
(modifier1) class namaKelas (modifier2){
classBody
}
Keterangan untuk modifier1:
Public : menyatakan bahwa kelas tersebut dapat juga diakses oleh kelas yang lain, baik yang masih berada dalam package yang sama maupun berbeda.
Private : menyatakan bahwa kelas tersebut tidak dapat diakses sama sekali oleh kelas lain, tanpa memandang apakah ia berasal dari paket yang sama atau bukan.
Protected: membatasi akses kelas yang dilakukan oleh subkelas turunannya (dari proses pewarisan/inheritance) dan kelas lain yang terletak dalam paket yang sama.
Abstract : menyatakan bahwa kelas tersebut tidak dapat diinstasiasi langsung menjadi objek. Modifier ini hanya dipakai bila kelas tersebut terletak pada hirarki kelas tertinggi, sehingga hanya mungkin diturunkan sebagai sub kelas, bukan diinstasiasi menjadi objek.
Final : menyatakan bahwa kelas tersebut tidak dapat diturunkan menjadi subkelas (pewarisan)
Keterangan untuk modifier2:
Extends dan SuperClass : digunakan dalam prinsip inheritance, yaitu bila kelas tersebut merupakan sub kelas dari suatu kelas super (Super)
Implements dan Interface: digunakan bila kelas tersebut mengimplementasikan satu atau lebih interface. Bila terdapat lebih dari satu interface digunakan koma diantara interface-interface tersebut.
Dalam konsep Pemrograman Berorientasi Objek dikenal beberapa istilah umum, yaitu:
– Attribute
Definisi dan Gambaran Umum Atribut
Atribut dari sebuah kelas adalah variabel global yang dimiliki sebuah
kelas, Atribut dapat memiliki hak akses private, public maupun
protected.
Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung.
Sebuah atribut yang dinyatakan sebagai private hanya dapat diakses secara langsung oleh kelas yang membungkusnya, sedangkan kelas lainnya tidak dapat mengakses atribut ini secara langsung.
Sebuah atribut yang dinyatakan sebagai public dapat diakses secara
langsung oleh kelas lain di luar kelas yang membungkusnya.
Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya.
Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut.
Sebuah atribut yang dinyatakan sebagai protected tidak dapat diakses secara langsung oleh kelas lain di luar kelas yang membungkusnya, kecuali kelas yang mengaksesnya adalah kelas turunan dari kelas yang membungkusnya.
Atribut juga biasa disebut state/ properties/ field merupakan bagian yang dimiliki oleh sebuah class yang tidak melakukan operasi, tetapi kepadanya dilakukan operasi sehingga dapat merubah nilai dari attribute tersebut.
Karakteristik Atribut
Dalam class, atribut disebut sebagai variabel. Atribut dapat
membedakan antara satu object dengan object yang lain. Sebagai contoh,
pada class : mahasiswa, terdapat object mahasiswa si A, dan object
mahasiswa si B.
Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable.
Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya :
Pada Instance Variabel à tiap object memiliki instance variabel dan menyimpan nilainya tersendiri.
Yang membedakan antara object si A dan si B adalah NPM-nya (Nomor Pokok Mahasiswa) yang merupakan atribut dari object tersebut. Pada atribut, terdapat pula dua istilah variabel, yaitu Instance Variabel dan Class Variable.
Dimana pada tiap variabel memiliki karakteristik tersendiri, diantaranya :
Pada Instance Variabel à tiap object memiliki instance variabel dan menyimpan nilainya tersendiri.
Sedangkan pada Class Variabel à atribut yang dimiliki oleh semua
object yang berasal dari class yang sama, serta semua object memiliki
nilai class variabel yang sama. atribut yang dimiliki object dari class
yang sama.
– Method
Definisi dan Gambaran Umum Method
Method adalah fungsi atau prosedur yang dibuat oleh seorang programmer
didalam suatu Class. Dengan kata lain, method pada sebuah kelas hampir
sama dengan fungsi atau prosedur pada pemrograman prosedural.
Pada sebuah method di dalam sebuah kelas juga memiliki izin akses seperti halnya atribut pada kelas, izin akses itu antara lain private, public dan protected yang memiliki arti sama pada izin akses atribut yang telah dibahas sebelumnya. Sebuah kelas boleh memiliki lebih dari satu method dengan nama yang sama asalkan memiliki parameter masukan yang berbeda sehingga kompiler atau interpreter dapat mengenali method mana yang dipanggil.
Pada sebuah method di dalam sebuah kelas juga memiliki izin akses seperti halnya atribut pada kelas, izin akses itu antara lain private, public dan protected yang memiliki arti sama pada izin akses atribut yang telah dibahas sebelumnya. Sebuah kelas boleh memiliki lebih dari satu method dengan nama yang sama asalkan memiliki parameter masukan yang berbeda sehingga kompiler atau interpreter dapat mengenali method mana yang dipanggil.
Hal ini dinamakan overloading. Di dalam sebuah kelas, terdapat juga
yang disebut sebagai method atau atribut statis yang memiliki kata kunci
static. Maksud dari statis di sini adalah method yang dapat diakses
secara berbagi dengan semua objek lain tanpa harus membuat objek yang
memiliki method statis tadi (tanpa proses new), tapi sebuah method
statis mempunyai keterbatasan yaitu hanya dapat mengakses atribut atau
method lain di dalam kelas yang membungkusnya yang juga bersifat statis.
Method statis biasanya diimplementasikan untuk method main.
Karakteristik Method
Didalam suatu class, behavior disimpan dalam bentuk Method. Method
merupakan serangkaian statemen / perintah (perintah = baris program)
dalam suatu class yang menghandle task tertentu. Method merupakan
hal-hal yang bisa dilakukan oleh object dari suatu class.
Method didefinisikan pada class akan tetapi dipanggil melalui object. Method memiliki peranan diantaranya :
– merubah nilai atribut dari suatu object,
– menerima informasi dari object lain, dan
– mengirim informasi ke obyek lain untuk melakukan suatu task (cara obyek berkomunikasi dengan obyek lain adalah dengan menggunakan method).
Method didefinisikan pada class akan tetapi dipanggil melalui object. Method memiliki peranan diantaranya :
– merubah nilai atribut dari suatu object,
– menerima informasi dari object lain, dan
– mengirim informasi ke obyek lain untuk melakukan suatu task (cara obyek berkomunikasi dengan obyek lain adalah dengan menggunakan method).
– Class
Merupakan model yang berisi kumpulan attribute dan method dalam suatu
unit untuk suatu tujuan tertentu. Sebagai contoh class manusia memiliki
attribute berat, tinggi, usia kemudian memiliki method makan, minum,
tidur. Method dalam sebuah class dapat merubah attribute yang dimiliki
oleh class tersebut. Sebuah class merupakan dasar dari modularitas dan
struktur dalam pemrograman berorientasi object.
Definisi dan Gambaran Umum Class
Class didefinisikan sebagai sebuah blueprint(denah), atau prototipe,
yang mendefiniskan variabel-variabel dan metode-metode yang umum untuk
semua objek dari n jenis tertentu (n maksudnya jumlah tertentu). Sebuah
kelas menyerupai sebuah struktur yang merupakan tipe data sendiri,
misalkan tipe data titik yang terdiri dari koordinat x dan y. Bahasa
Java telah menggunakan sebuah kelas untuk menyatakan tipe data titik
karena bahasa pemrograman Java merupakan bahasa pemrograman berorientasi
objek murni sehingga tidak mengenal struktur, melainkan mengenal apa
yang disebut dengan kelas.
Perbedaan sebuah kelas dengan sebuah struktur adalah sebuah kelas
dapat berdiri sendiri dan dapat digunakan untuk berbagai keperluan
kelas-kelas yang lain, sedangkan sebuah struktur tidak dapat berdiri
sendiri. Sebuah kelas lebih fleksibel untuk digunakan oleh kelas lain
tanpa harus membongkar kode program utama, sedangkan jika digunakan
struktur maka kode program harus dibongkar unuk disalin bagian
strukturnya ke kode program utama yang lain.
Sebuah file dapat terdiri dari berbagai kelas, namun biasanya pada
bahasa pemrograman Java sebuah file hanya terdiri dari satu kelas yang
disimpan dengan nama kelas, misal file List.java
berisi kelas List. Namun jika kelas yang dibuat misalnya public class
nama_kelas, maka kelas itu harus disimpan dalam satu file hanya untuk
satu kelas. Setelah dilakukan kompilasi maka pada Java akan ada sebuah
file .class yang berisi bytecode dari setiap kelas.
Jika sebuah file terdiri dari dua kelas, maka setelah dilakukan
kompilasi akan dihasilkan dua buah file .class yang nantinya akan dibaca
oleh interpreter Java saat program dieksekusi. Sebuah kelas saat
program dieksekusi dan perintah new dijalankan, maka akan dibuat sebuah
objek. Class adalah template untuk pembuatan objek. Class juga memiliki
anggota, diantaranya : atribut dan method.
Pemahaman singkatnya :
• Class merupakan pola / template yang menggambarkan kumpulan object yang mempunyai sifat dan perilaku yang sama.
• Class merupakan struktur data dari object (blueprint dari sebuah object), dan proses pembuatan object dari sebuah class disebut juga dengan instantiation.
• Class merupakan definisi data dan fungsi dari suatu hal (benda, konsep, dll).
• Di dalam class dideklarasikan variabel dan method yang dimiliki oleh obyek
Pemahaman singkatnya :
• Class merupakan pola / template yang menggambarkan kumpulan object yang mempunyai sifat dan perilaku yang sama.
• Class merupakan struktur data dari object (blueprint dari sebuah object), dan proses pembuatan object dari sebuah class disebut juga dengan instantiation.
• Class merupakan definisi data dan fungsi dari suatu hal (benda, konsep, dll).
• Di dalam class dideklarasikan variabel dan method yang dimiliki oleh obyek
Karakteristik Class
Class memiliki beberapa karakteristik, diantaranya : anggota class
terdiri dari atribut dan method. Tiap-tiap anggota class memiliki
control pengaksesan tersendiri, maksudnya adalah apakah anggota class
tersebut dapat diakses dengan bebas (dengan tipe public) atau hanya
dapat diakses melalui sebuah interface.
Dalam hal ini, interface adalah device yang digunakan untuk komunikasi antar object berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar object tersebut.
Dalam hal ini, interface adalah device yang digunakan untuk komunikasi antar object berbeda yang tidak memiliki hubungan apapun. Interface bisa dikatakan sebagai protokol komunikasi antar object tersebut.
– Object
Merupakan perwujudan dari class, setiap object akan mempunyai
attribute dan method yang dimiliki oleh class-nya, contohnya: amir,
ahmad, yani merupakan object dari class manusia. Setiap object dapat
berinteraksi dengan object lainnya meskipun berasal dari class yang
berbeda.
Definisi dan Gambaran Umum Object
Object merupakan sesuatu yang memiliki identitas (nama), pada umumnya
juga memiliki data tentang dirinya maupun object lain dan mempunyai
kemampuan untuk melakukan sesuatu dan bisa bekerja sama dengan objek
lainnya. Pada dasarnya semua benda yang ada di dunia dapat dianggap
sebagai sebuah object. Rumah, mobil, sepeda motor, meja, dan komputer
merupakan contoh-contoh object yang ada di dunia nyata. Object adalah
implementasi dari class. Secara sederhananya, dapat dikatakan terdiri
dari properti (atribut) dan method.
Pemahaman singkatnya :
• Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri.
• Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek.
Pemahaman singkatnya :
• Objek merupakan sebuah objek khusus yang digunakan untuk mengakses anggota objek (atribut atau method) dari dalam objek itu sendiri.
• Apabila terdapat variabel lain yang memiliki nama yang sama dengan nama atribut di dalam objek, “this” dapat digunakan untuk merujuk ke atribut objek.
Karakteristik Object
Setiap object memiliki dua karakteristik yang utama, yaitu atribut dan
behavior. Atribut merupakan status object dan behavior merupakan
tingkah laku dari object tersebut.
Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya :
Contoh objek : Sepeda
– Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
– Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur.
Contoh sederhana adalah sepeda. Object sepeda memiliki atribut : pedal, roda, dan gigi, kecepatan serta memiliki tingkah laku seperti pacu dan rem. Sama seperti penggambaran di dunia nyata, pengembangan program dengan konsep OOP juga menggunakan model object yang akan menyimpan atributnya dalam variabel dan tingkah lakunya dalam method atau fungsi-fungsi/prosedur. Deskripsinya :
Contoh objek : Sepeda
– Sepeda memiliki atribut ( state ) : pedal, roda, jeruji, dan warna.
– Sepeda memiliki tingkah laku ( behaviour ) : kecepatannya menaik, kecepatannya menurun, dan perpindahan gigi sepeda.
Dalam pengembangan perangkat lunak berorientasi objek, objek dalam perangkat lunak akan menyimpan state-nya dalam variabel dan menyimpan informasi tingkah laku ( behaviour ) dalam method-method atau fungsi-fungsi/prosedur.
Konsep-konsep dalam OOP/PBO :
– Abstraction
Adalah suatu cara untuk melihat suatu object dalam bentuk yang lebih
sederhana. Sebagai contoh kita tidak melihat sebuah mobil sebagai ribuan
komponen elektronik, sistem mekanik dengan empat buah ban, jok, stir
kemudi dan sebagainya. Dengan Abstraction, suatu sistem yang kompleks
dapat dipandang sebagai kumpulan subsistem-subsistem yang lebih
sederhana, seperti halnya mobil merupakan suatu sistem yang terdiri atas
berbagai subsistem, seperti subsistem kemudi, subsistem pengereman dan
sebagainya.
Abstraksi merupakan kemampuan sebuah program untuk melewati aspek
informasi yang diproses olehnya, yaitu kemampuan untuk memfokus pada
inti. Setiap objek dalam sistem melayani sebagai model dari “pelaku”
abstrak yang dapat melakukan kerja, laporan dan perubahan keadaannya,
dan berkomunikasi dengan objek lainnya dalam sistem, tanpa mengungkapkan
bagaimana kelebihan ini diterapkan.
Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
Proses, fungsi atau metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk mengembangkan sebuah pengabstrakan.
– Encapsulation
Merupakan suatu mekanisme untuk menyembunyikan atau memproteksi suatu
proses dari kemungkinan interferensi atau penyalahgunaan dari luar
sistem dan sekaligus menyederhanakan penggunaan sistem tersebut.
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak. Hanya metode dalam objek tersebut yang diberi ijin untuk mengakses keadaannya. Setiap objek mengakses interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya. Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek tersebut.
– Inheritance
Merupakan konsep mewariskan attribute dan method yang dimiliki oleh
sebuah class kepada class turunannya. Dengan konsep ini class yang
dibuat cukup mendefinisikan attribute dan method yang spesifik
didalamnya, sedangkan attribute dan method yang lebih umum akan
didapatkan dari class yang menjadi induknya.
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada.Objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
Mengatur polimorfisme dan enkapsulasi dengan mengijinkan objek didefinisikan dan diciptakan dengan jenis khusus dari objek yang sudah ada.Objek-objek ini dapat membagi (dan memperluas) perilaku mereka tanpa haru mengimplementasi ulang perilaku tersebut (bahasa berbasis-objek tidak selalu memiliki inheritas.)
– Polymorphism
Merupakan konsep yang memungkinkan digunakannya suatu interface yang
sama untuk memerintah suatu object agar melakukan suatu tindakan yang
mungkin secara prinsip sama tetapi secara proses berbeda.
Model data berorientasi objek disebut dapat memberi fleksibilitas yang lebih, kemudahan mengubah program dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya selain itu pendekatan OOP lebih mudah dikembangkan dan dirawat.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, dengan metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesan tersebut dikirim.
Model data berorientasi objek disebut dapat memberi fleksibilitas yang lebih, kemudahan mengubah program dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding dengan pendekatan sebelumnya selain itu pendekatan OOP lebih mudah dikembangkan dan dirawat.
Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan, dengan 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.
Sumber :

Komentar
Posting Komentar