4 objek

31
Objek Sufian Idris Jabatan Sains Komputer

Upload: madzani-nusa

Post on 21-Jun-2015

556 views

Category:

Technology


10 download

TRANSCRIPT

Page 1: 4   Objek

Objek

Sufian IdrisJabatan Sains

Komputer

Page 2: 4   Objek

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.

Page 3: 4   Objek

$$$$Kad

A

TM

kuK

ad

AT

Mku

RuangObjek

Page 4: 4   Objek

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

Page 5: 4   Objek

Objek Ada Keadaan Setiap objek memiliki atribut (attribute)

yang secara kolektif mewakilkan keadaan (state) objek itu.

Sebelum dicat Objek yang sama selepas dicat

Page 6: 4   Objek

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

Page 7: 4   Objek

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

Page 8: 4   Objek

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

Komputer

Pemproses

Ingatan

pautan

Page 9: 4   Objek

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

Page 10: 4   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

Page 11: 4   Objek

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

terbang??

Page 12: 4   Objek

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

DokumenTetingkapsimpan

Page 13: 4   Objek

Segiempat

5

warna

lebar

tinggi 10

hijau

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

zoom_2x

10

20

Page 14: 4   Objek

Objek boleh juga menghantar mesej kepada objek lain dalam tindakbalasnya.

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

Page 15: 4   Objek

Objek Ada Identiti

Setiap objek mempunyai suatu identiti yang membezakannya daripada objek lain.

Kembar tiga… tetapi masing-masing ada identitinya

Page 16: 4   Objek

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

Page 17: 4   Objek

Hubungan Diantara Keadaan Dengan Perlakuan Objek Perlakuan objek boleh mempengaruhi

keadaannya.

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

Page 18: 4   Objek

Keadaan objek boleh mempengaruhi perlakuannya

bilangan tin:

200

Page 19: 4   Objek

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!

Page 20: 4   Objek

Manusia dikurniakan kemahiran mengabstrak fitur objek yang penting sahaja.

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

Page 21: 4   Objek

Pengkapsulan (Encapsulation)

Objek tidak seharusnya mendedahkan "rahsia"nya.

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

Page 22: 4   Objek

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

bagaimana objek bertindakbalas terhadap mesej

atribut objek

40

luas()

atribut:lebartinggi…

perlakuan:

luas()

return lebar * tinggi;

Page 23: 4   Objek

Antara manfaat pengkapsulan:

objek boleh mengawal capaian keatas atributnya.

klien tidak perlu hirau mengenai sebarang pengubahsuaian terhadap pengimplementasian.

Page 24: 4   Objek

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.

Page 25: 4   Objek

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.

Page 26: 4   Objek

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

yesss!

Di mana untuk dapatkan antara muka objek?

objekSegiempat

Page 27: 4   Objek

Mesej Dan Metod

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

lompat

Page 28: 4   Objek

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

Page 29: 4   Objek

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()

Page 30: 4   Objek

Kerjasama Objek

Objek yang bersendirian tidak ada gunanya dalam perisian berorientasikan objek.

“No object is an island”

Page 31: 4   Objek

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