4 Objek

Post on 21-Jun-2015

556 views 10 download

Transcript of 4 Objek

Objek

Sufian IdrisJabatan Sains

Komputer

Objek adalah konsep terpenting dalam orientasi objek.

Apabila suatu aturcara OO dilaksanakan, suatu ruang akan diwujudkan untuk menempatkan objek-objek yang dicipta oleh aturcara sepanjang perlaksanaannya.

Dalam ruang tersebut, objek-objek berinteraksi sesama mereka. Perlakuan aturcara adalah kesan yang diperolehi daripada aktiviti yang berlaku dalam ruang ini.

$$$$Kad

A

TM

kuK

ad

AT

Mku

RuangObjek

Takrifan Objek Objek adalah suatu benda yang

mempunyai keadaan, perlakuan dan identiti. Beberapa contoh:

Mesin ATM di FK, UKMKereta Dekan FTSMProjektor LCD di dewan kuliah FTSM

Objek Ada Keadaan Setiap objek memiliki atribut (attribute)

yang secara kolektif mewakilkan keadaan (state) objek itu.

Sebelum dicat Objek yang sama selepas dicat

Dalam bahasa Java, atribut objek diimplementasikan sebagai suatu pembolehubah yang dimiliki oleh objek.

Contoh:

Kereta

“WHH7801”

hijau

“Sufian Idris”

warna

nbrPlet

pemilik

Kereta

“WHY9531”

biru

“Ali Bakar”

warna

nbrPlet

pemilik

Suatu objek Kereta Suatu objek Kereta lain

Atribut-atribut yang dipunyai oleh objek lazimnya tidak berubah.

Atribut lazimnya boleh berubah nilainya. Namun, terdapat juga atribut yang nilainya tetap.

PetiSejuk

“342-0967”

“Ali Bakar”

biru

pemilik

nbrSiri

warna

boleh berubah

tetap

Objek boleh mempunyai hubungan pautan (link) dengan objek lain.

Komputer

Pemproses

Ingatan

pautan

Dalam Java, pautan objek diimplementasikan sebagai atribut yang nilainya suatu rujukan objek.

Komputer

tarikhBeli

pemproses

ingatan

20022002

Ingatan

saiz 256

Pemproses

kelajuan 900

rujukan objek

Objek Ada Perlakuan

Penghantaran mesej merupakan mekanisma yang digunakan untuk berinteraksi dengan objek.

Suatu objek boleh diminta melakukan suatu tugas dengan cara menghantar mesej tertentu kepadanya.

lompat

Untuk mendapatkan tindakbalas (response), objek seharusnya dihantar mesej yang difahami olehnya.

terbang??

Perlakuan (behaviour) objek merujuk kepada bagaimana objek bertindakbalas terhadap mesej-mesej yang diterima daripada klien.

DokumenTetingkapsimpan

Segiempat

5

warna

lebar

tinggi 10

hijau

Tindakbalas objek terhadap suatu mesej boleh menyebabkan keadaan objek itu berubah.

zoom_2x

10

20

Objek boleh juga menghantar mesej kepada objek lain dalam tindakbalasnya.

tukar saluran (5)buka saluran komunikasitukar saluran (5)tutup saluran komunikasi

Objek Ada Identiti

Setiap objek mempunyai suatu identiti yang membezakannya daripada objek lain.

Kembar tiga… tetapi masing-masing ada identitinya

Dalam orientasi objek, identiti objek adalah semulajadi. Objek tidak perlu ada atribut untuk mewakilkan identitinya.

class Komputer {private int idKomputer;private Date tarikhBeli;private Pemproses pemproses;

…}

Redundan

Hubungan Diantara Keadaan Dengan Perlakuan Objek Perlakuan objek boleh mempengaruhi

keadaannya.

Contohnya, pengeluaran wang daripada mesin ATM menyebabkan wang dalam mesin itu berkurangan.

Keadaan objek boleh mempengaruhi perlakuannya

bilangan tin:

200

Pengabstrakan (Abstraction) Katakan kita ingin menakrifkan suatu

objek yang mewakilkan seekor kucing. Apakah atribut dan perlakuan objek kucing?

Atribut Perlakuan

beratpanjangsaiz jantung

kunyahminumjalan

… …

…tidak terhingga banyaknya!

Manusia dikurniakan kemahiran mengabstrak fitur objek yang penting sahaja.

Pengaturcara hanya perlu menakrifkan atribut dan perlakuan yang diperlukan dalam menyelesaikan masalah.

Pengkapsulan (Encapsulation)

Objek tidak seharusnya mendedahkan "rahsia"nya.

Contoh: tukang masak restoran lazimnya tidak mendedahkan cara ia menyediakan suatu masakan.

Objek lazimnya menyembunyikan (mengkapsulkan [encapsulate]) maklumat berikut:

bagaimana objek bertindakbalas terhadap mesej

atribut objek

40

luas()

atribut:lebartinggi…

perlakuan:

luas()

return lebar * tinggi;

Antara manfaat pengkapsulan:

objek boleh mengawal capaian keatas atributnya.

klien tidak perlu hirau mengenai sebarang pengubahsuaian terhadap pengimplementasian.

Antara Muka

Untuk mendapatkan maklumat mengenai mesej-mesej yang difahami oleh suatu objek, kita boleh rujuk antara muka objek itu.

Setiap objek tahu memberi tindakbalas terhadap mesej tertentu sahaja.

Antara muka objek mendedahkan unsur-unsur yang tidak dikapsulkan oleh objek.

Satu daripada unsur tersebut adalah senarai mesej yang boleh dihantar kepada objek. Perlu ingat bahawa hanya format mesej yang didedahkan dan bukannya perincian mengenai cara objek bertindakbalas terhadap mesej.

ANTARA MUKAluas()ukurlilit()setLebar(int lebar)setTinggi(int tinggi)??

yesss!

Di mana untuk dapatkan antara muka objek?

objekSegiempat

Mesej Dan Metod

Penghantaran mesej adalah mekanisma yang digunakan oleh objek untuk berkomunikasi dengan objek lain.

lompat

Objek yang menerima mesej digelar objek penerima (receiver object). Objek yang menghantar mesej pula digelar klien.

Setiap mesej terdiri daripada namanya (wajib ada) dan parameter (jika ada).

tukar saluran (5) buka saluran komunikasitukar saluran (5)tutup saluran komunikasi

KlienObjekPenerima

Metod (method) adalah unsur objek yang mengandungi perincian mengenai bagaimana objek bertindakbalas terhadap suatu mesej.

40

luas()

atribut:lebartinggi…

perlakuan:

luas()

return lebar * tinggi;

Mesej luas()

Metod luas()

Kerjasama Objek

Objek yang bersendirian tidak ada gunanya dalam perisian berorientasikan objek.

“No object is an island”

Komunikasi antara objek sangat penting dalam perisian OO kerana perlakuan sistem adalah hasil daripada kerjasama objek-objek dalam perisian itu.