KARAKTERISTIK - KARAKTERISTIK DARI PEMPROGRAMAN BERORIENTASI OBJEK!
Karakteristik - Karakteristik Dari Pemprograman Berorientasi Objek!
1. ABSTRAKSI
Abstraksi - 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.Implementasi konsep Abtraksi:
• Mobil adalah kumpulan sistem pengapian, sistem kemudi, sistem pengereman
2. ENKAPSULASI
Enkapsulasi (Pengapsulan) - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek tersebut yang diberi izin 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.Implementasi konsep Enkapsulasi:
• Tongkat transmisi (gigi) pada mobil
• Tombol on/off/pengaturan suhu pada AC
3. POLIMORFISME
Polimorfisme (Polymorphism) - melalui pengiriman pesan. Tidak bergantung kepada pemanggilan subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di mana pesa 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.Implementasi konsep polymorphism:
• Overloading: Penggunaan satu nama untuk beberapa method yang berbeda parameter
• Overriding: Terjadi ketika deklarasi method subclass persis sama dengan method dari superclassnya
4. INHERITANCE
Inheritance (Pewarisan) - Pewarisan merupakan sifat dalam bahasa pemrograman berorientasi objek yang memungkinkan sifat-sifat dari suatu kelas diturunkan ke kelas lain. Analogi dengan dunia nyata, misalnya pada anjing. Anjing sebagai kelas mempunyai sifat antara lain:• Dapat menggonggong
• Berkaki empat
Apabila Pinky adalah anjing, maka Pinky juga memiliki sifat-sifat umum anjing. Namun, tentu saja Pingky dapat mempunyai sifat lain, misalnya pendiam atau lucu.