1 / 25

Objek dan Kelas

Objek dan Kelas. Zahara Ritonga , S.Kom STMIK BANDUNG, 2012. Pendahuluan. Pemrograman berorientasi objek adalah sebuah konsep pemrograman untuk membuat kode program yang lebih terstruktur , terkelompokkan berdasarkan objek yang terlibat untuk [ embuatan aplikasi .

Download Presentation

Objek dan Kelas

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ObjekdanKelas ZaharaRitonga, S.Kom STMIK BANDUNG, 2012

  2. Pendahuluan • Pemrogramanberorientasiobjekadalahsebuahkonseppemrogramanuntukmembuatkode program yang lebihterstruktur, terkelompokkanberdasarkanobjek yang terlibatuntuk [embuatanaplikasi. • Membagikode program aplikasimenjadikumpulanbungkusanbenda/objek yang dipandangdarisudutaplikasikomputer.

  3. PemrogramanProseduralvsBeorientasiObjek • Sebelummunculnya ide membuatkonsep [emrogramanbeorientasiobjek, telahmunculterlebihdahulupemrogramanprosedural. • Membagi proses yang dilakukan program menjadiprosedural-proseduralataufungsi yang dibuatberdasarkanpembagian proses yang dibutuhkansebuah program. • Contoh : penyewaan VCD makapada program proseduralakandibuatprosedurataufungsisepertigambarberikut.

  4. Prosedurdanfungsidikelompokkanberdasarkanjenisobjekataubenda yang dikenai proses ditambahdengansebuahkelasuntukmenampung program utama. • Kelas yang dibuatakandigunakanolehkelasutamakarenakelasuatamaadalahkelas yang akanpertama kali dijalankanketika program dijalankan. • Prosedurdanfungsipadapemrogramanbeorientasiobjekdisebutdenganmetode. • Tujuannya agar kode program yang sudahdibuatuntuksebuah program berorientasiobjekdapatdigunakanuntuk program lain.

  5. SyaratUmumBahasa yang MendukungPemrogramanBerorietasiObjek • Enkapsulasi • Mampumembungkusatributdanmetodedalamsebuahkelasdandapatmencegahpengaksesanlangsungatributdanmetode yang ingindilindungi di dalamsebuahkelas, misalkanmembungkusmetode yang terkaitdengan VCD kedalamkelas VCD. • Pewarisan • Memungkinkanadanyapendefinisiankelasbaru yang memilikisifat-sifatturunandarikelas lain. • Polimorfisme • Memungkinkanpembuatanpengaksesanmetodedengannama yang samanamunberbeda parameter masukanatauberbedakelas.

  6. ManfaatPewarisan • Tanpa inheritance, makasemua attribute dan method yang pernahdibuatdanbutuhkankelas lain, harusditulisulangseluruhnya. • Dengan inheritance, seorang programmer inginmemodifikasisuatu attribute atau method yang dimanfaatkansubkelas, makadilakukanmodifikasi attribute dan method tersebutpadakelassupernya.

  7. Class danObjek • Kelasmerupakantemplate untukmembuatobyek. • Merupakanprototipe / blue prints yang mendefinisikanvariabel – variabeldanmethod – method secaraumum. • Kelasadalahtulisankode program kelas yang ditulisolehprogrammersedangkanobjekadalahkelas yang telahdieksekusidandijalankanmenjadi program komputer. • Objekadalahelemenpadasaat runtime yang akandiciptakan, dimanipulasi, dandihancurkandaateksekusisehinggasebuahobjekhanyaadasaatsebuah program dieksekusi.

  8. Atribut • Atributdarisebuahkelasadalahvariabel global yang dimilikisebuahkelas, misalkanpadakelasberikut: • MakajuduladalahatributdarikelasBuku yang bertipe string danpengarangadalahatributdarikelasBukubertipe string. • Atributpadasebuahkelasmemilikiizinaksesjikakelasdigunakanoelhkelas lain, izinaksesitusepertiprivate, public, protected. Class Buku privatejudul : stringprivatepengarang : string Buku() (end constructor)(end class)

  9. Atribut Private • Menyatakanbahwakelastersebuttidakdapatdiaksessamasekaliolehkelas lain bahkanjugatidakdapatditurunkan. • Berarti attribute-attribute yang private hanyadapatdiaksesoleh method-method dalamkelas yang sama, kelas lain masihdapatmengaksesmelalui method-method tersebutasalmodifiernya public. • Pertimbangansuatu attribute dideklarasikan private : • Bilakelas lain takmemerlukan attribute tersebut. • Melindungisuatu attribute darikemungkinannilainyadiubaholeh method lain darikelas lain.

  10. Atribut Public • Menyatakanbahwakelas/method/attribute tersebutdapatdiaksesolehkelas lain dimanapun. Class Buku publicjudul : stringpublicpengarang : string Buku() (end constructor)(end class)

  11. Atribut Protected • Menyatakanbahwakelas/method/attribute tersebutdapatdiaksesolehkelas lain yang beradadalamsatu package ataukelas lain tersebutmerupakanturunannya.

  12. PACKAGE • Package adalahsarana/carapengelompokkandanpengorganisasiankelas-kelasdan interface yang sekelompokmenjadisuatu unit tunggaldalam library. • Package jugamempengaruhimekanismehakakseskekelas-kelas di dalamnya.

  13. PengaruhPackage terhadap Method • Kelas yang mengandung method memilkisyarattidakberadadalamsuatu package, danhirarkiposisifoldernya di atas package yang diimport.

  14. Membuat Package • Ada tigalangkahuntukmembuat package : • Mendeklarasikandanmemberinama package. • Membuatstrukturdannamadirektori yang sesuaidenganstrukturdannama package. • Mengkompilasikelas-kelassesuaidenganpackagenyamasing-masing.

  15. MendeklarasikandanMemberiNama Package • Deklarasi package harusdiletakkanpadabagian paling awal (sebelumdeklarasi import) dari source code setiapkelas yang dibungkus package tersebut. • Bentukumumdeklarasi package : package namaPackage • Deklarasitersebutakanmemberitahukankompilator, ke library manakahsuatukelasdikompilasidandirujuk.

  16. Syaratnamapackage • Diawalihurufkecil • Menggambarkankelas-kelas yang dibungkusnya • Harusunik (berbedadengannama package standard) • Merepresentasikan path dari package tersebut. • Harussamadengannamadirektorinya.

  17. Konstruktor • Sebuahkelasharusmemilikisebuahmetode yang disebutsebagaikonstruktor. • Namasebuahkonstruktorharussamadengannamadarisebuahkelas. • Sebuahkonstruktorjugadapatmenerimasebuahmasukansepertihalnyaprosedurpada program prosedural. • Fungsidarisebuahkonstruktoradalah : • Mengalokasikansebuahobjeksaat program dieksekusi(memerintahkandibuatnyaalokasiobjekdimemprisaat program dijalankan) • Memberikannilaiawalsebagaiinisialisasidarisemuaatribut yang perludiinisialisasikan • Mengerjakan proses yang diperlukansaatsebuahobjekdibuat

  18. Destruktor • Destruktoradalahmetode yang dipanggilsecaraotomatisketikaobjekdihancurkan. • Sebuahdestruktortidakharusadapadakode program sebuahkelasjika compiler atau interpreter tidakmemiliki garbage collection (mekanismemembersihkanalokasiobjek yang sudahtidaktepakaidimemori). • Penamaandestruktorsamadengankonstruktor, hanyasajapadadestruktordiberitanda ~ padabagiandepanpenamaanmetode.

  19. Method • Metodepadasebuahkelashampirsamadenganfungsiprosedurpadapemrogramanprosedural. • Padasebuahmetodedidalamsebuahkelasjugamemilikiizinaksessepertihalnyaatributpadakelas. • Karakteristiksebuahmetode : • Dapatmengembalikansatunilaiatautidaksamasekalidapatditerimabeberapa parameter yang dibutuhkanatautidakada parameter samasekali. Parameter bisajugadisebutsebagaiargumendarifungsi • Setelahmethod telahselesaidieksekusi, diaakankembalipadamethod yang memanggilnya.

  20. PEWARISAN (INHERITANCE) • Semua attribute dan method darisuatukelas super dapatdiwariskankesubkelas. • Dalamhirarkikelas, jikakelas C merupakanturunankelas B, dankelas B merupakanturunankelas A, makaotomatis attribute dan method kelas A jugadiwariskankelas C. • Bentukpewarisan : • [modifier] class namaSubKelas extend namaKelasSuper { • // classBody • }

  21. ManfaatPewarisan • Tanpa inheritance, makasemua attribute dan method yang pernahdibuatdanbutuhkankelas lain, harusditulisulangseluruhnya. • Dengan inheritance, seorang programmer inginmemodifikasisuatu attribute atau method yang dimanfaatkansubkelas, makadilakukanmodifikasi attribute dan method tersebutpadakelassupernya.

  22. Overrriding Attribute dan Method • Overriding adalahkemampuansuatusubkelasuntukmemodifikasi attribute dan method milikkelassupernya (tentu yang memilikisifat private atau final tidakbiasadilakukan overriding). • Modifikasi yang dilakukan, misalnyajumlah parameter, tipe parameter, tipe return value, ataupunlingkunganpemrosesandatanya. // Contoh program overriding class KelasSuper { public void methodAsli() { System.out.println(”Method milikKelasSuperjalan”); } public static void main(String[] args) { KelasSuper oks = new KelasSuper(); oks.methodAsli(); } }

  23. POLIMERFISME • Polimorfismeberartibanyakbentuk. • Padapemrogramanberorientasiobjek, polimorfismemeerupakankonsep yang menyatakansesuatu yang samadapatmemilikiberbagaibentukdanperilaku yang berbeda. • Polimerfismedapatberupa overloading atau overriding.

  24. Overloading • Overloading merupakanbentukdaripolimerfismeyaitubeberapametodedapatmemilikinama yang samadenganisidan parameter yang berbeda di dalamsebuahkelas.

  25. Overriding • Overriding merupakanbentukpolimerfismeyaitubeberapametodepadakelas orang tuadapatditulisulangpadakodekelasanakdalampewarisan (inheritance) denganmemilikinama yang samadanmemilikiisiataupunparamater yang samaatauberbeda.

More Related