230 likes | 405 Views
Object and All Things Related to It. Viska Mutiawani , M.Sc. Objek adalah konsep yg paling penting pada Pemrograman Berorientasi Objek Ketika suatu program berbasis objek , program tersebut menciptakan objek yang saling berkolaborasi di dalam memori. Definisi Objek.
E N D
Object and All Things Related to It ViskaMutiawani, M.Sc
Objekadalahkonsepyg paling pentingpadaPemrogramanBerorientasiObjek • Ketikasuatu program berbasisobjek, program tersebutmenciptakanobjek yang salingberkolaborasididalammemori
DefinisiObjek • Objekadalahsesuatuygmemilikikeadaan, perilakudanidentitas • Contoh: • LCD proyektordiruang 304 InformatikaUnsyiah • Mesin ATM Bank MandiridikantorcabangMandiriUnsyiah • Mobil Ford Fiesta bernomor BL 792 JD
Objekmempunyaikeadaan • Setiapobjekmemilikiciritertentuygsecarakolektifmewakilikeadaanobjekitu. • Ciriobjek => atributobjek • Ciriobjekmemilikinilai. • Nilaidinamis • Nilaistatis
Mobil Mobil Warna Warna silver orange No plat No plat “BL 792 JD” “BL 792 JD” Pemilik Pemilik “SyahJenar” “SyahJenar” Contoh Dinamis Statis
jump Objekmempunyaiperilaku • Perilakuobjekberupareaksisuatuobjekterhadapsuatuoperasi yang dilakukankepadanya. • Reaksidapatberupa: • Perubahankeadaan • Tindakanmelakukanoperasiterhadapobjek lain dengancaramengirimpesan
Suatuobjekhanyabereaksiterhadappesan yang dipahaminyasaja ?? fly
Objekmempunyaiidentitas Triplets… but each of them has its own identity Setiapobjekmemilikiidentitasnyamasing-masing yang membedakannyadenganobjek lain
Identitassuatuobjeksudahbawaan. Tidakperluadaatributkhususuntukmembedakansetiapobjek. class Computer { private int computerID; private Date datePurchased; private Processor processor; … } Redundant
KeadaanobjekvsPerilakuobjek • Keadaansekarangsuatuobjekmerupakanhasilperilakuobjek • Jumlahuang yang adadimesin ATM saatinihasildariperilakupenarikanuangolehnasabah • Keadaanobjekmempengaruhiperilakunya • Jikastokuangdimesin ATM sudahhabis, makaperilakupenarikanuangolehnasabahtidakdapatdilakukan
Encapsulation • Objektidakseharusnyamembukalebarsemuainformasimengenainya. Adainformasi yang harusditutupidariklien. • Nasabahtidakperlutahuprosesdidalammesin ATM sewaktupenarikan • Encapsulationadalahteknikmempaketkaninformasidenganmenyembunyikansegalahalygharusdisembunyikandanmenampakkansegalahal yang bisaditampakkan.
HIDDEN BY OBJECT • Informasiygbiasanyadisembunyikan: • Atributobjek • Cara objekmelakukansesuatudidalamperilakunya attributes: width height … behaviour: area() 40 area() return width * height;
Object Interface • Tidaksemuapesandimengertiolehsuatuobjek. • Untukmengetahuipesan-pesan yang dimengerti, kitaperlumerujukke interface dariobjektersebut. • Interface objekberupainformasiumumdarisuatuobjek. Contoh: method public • Interface: seumpama menu bagiobjektersebut.
Rectangle object INTERFACE area() setWidth(int width) setHeight(int height) ?? yesss!
Pesandan Method • Interaksiantarobjekdengansalingberkirimpesan. • Pesandikirimkeobjek A agar objek A melakukansesuatu. • Format pesan: namaPesan (parameter jikaada)
Pesanygditerimaobjekdiimplementasidgnperilakudalamsuatumethod. • Method berisidetilimplementasibagaimanaobjekmeresponsuatupesan. message attributes: width height … behaviour: area() 40 area() return width * height; method
Daria Brittany Jane Jodie ObjekvsKelas (Class) • Kelas: satu set objek yang mempunyaiatributdanperilaku yang sama. • Objekdarisuatukelasmerupakananggota (instance) drkelastersebut. object class girl
ObjekvsKelas • Kelas • Tampakdidalam source code • Code tidakterduplikasi • Objek • Memiliki data sendiri • Akanaktifjika program sedangberjalan • Menggunakanmemori • Memilikikumpulanoperasi yang diberikanolehkelas
Contoh Operasi MakeDesposit Transfer WithDraw GetBalance Class BankAccount Balance InterestYTD Owner Account_number Balance 500 InterestYTD Owner Account_number Balance 10,000 InterestYTD Owner Account_number
Instantiation • Objekdiciptakandarisatukelas BankAccount myAccount; myAccount = new BankAccount;
Bentuk Persegi Lingkaran Segitiga Segiempat Banyaksegi PengelompokanKelas
Inheritance (pewarisan) • Hubungan “is-a” • Persegi is-a bentuk • Segiempat is-a persegi • Segiempat is-a bentuk • Satukelasdapatdispesifikkanmenjadi sub-kelas. • Sub-kelasakanmewarisiatributdanperilaku super-kelas. • Sub-kelasbisamemilikiatributdanperilakusendiri yang spesifik.
Polimorfisme • Satupesan, banyakperilaku. • Berkaitandenganpewarisan. • Padapewarisan, sub-kelasbisa override perilaku (method) super-kelas. Method yang dioverridenamanyatetapsamatapiperilakunyabeda. • Method overloading.