Konsep Pemrograman Berorientasi Objek (PBO) / Object Oriented Programming Concepts(OOP)

Pemrograman Java

Pemrograman Java

Pemrograman Berorientasi Objek atau yang lebih lazim dikenal dengan sebutan asing Object Oriented Programming (OOP) adalah inti dari pemrograman java. Semua pemrograman java adalah Object, maka dari itu, sebelum kawan-kawan memulai penulisan kode-kode program java , sebaiknya kawan-kawan mengetahui terlebih dahulu dasar-dasar dari konsep yang terkandung dalam pemrograman berorientasi objek. beberapa ciri dari pemrograman berorientasi objek adalah abstraksi (abstraction), pembungkusan (encapsulation), pewarisan (inherintance), dan polimorfisme (polymorphism). pembahasan detail mengenai setiap ciri OOP di atas akan kita kaji lebih pada penjelasan dibawah ini dan juga terdapat beberapa contoh dari Konsep Pemrograman OOP tersebut :

1. Abstraksi

Abstaksi adalah pengabstrakan atau penyembunyian kerumitan dari suatu proses. Sebagai contoh, orang tidak perlu berpikir bahwa mobil adalah kumpulan dari puluhan atau ribuan bagian-bagian kecil (mesin, kabel, baut, roda, rem, dsb). Orang hanya perlu berpikir bahwa mobil adalah sebuah objek yang telah memiliki prilaku spesifik, yang dapat digunakan sebagai alat transportasi, sehingga dia/mereka tinggal menggunakannya atau mengendarainya tanpa harus mengetahui kerumitan proses yang terdapat di dalam mobil tersebut. ini artinya, si pembuat mobil telah menyembunyuikan semua kerumitan-kerumitan proses yang terdapat didalam mobil dan pengguna tidak perlu mengetahui bagaimana sistem mesin , transmisi, dan rem berkerja. Konsep seperti inilah yang dinamakan dengan abstraksi.

Cotoh abstraksi dalam model pemrograman berorientasi objek,  kita sebagai programmer atau pengembang program tidak perlu tahu secara detail bagaimana cara membuat sebuah tombol, yang perlu kita ketahui adalah bagaimana cara menggunakan objek tombol yang sudah ada (baik data/propeti maupun method-nya). dalam kasus ini, si pembuat objek telah mengabstraksikan semua proses yang berkaitan dengan pembuatan tombol.

2.Pembungkusan (Encapsulation)

Secara kode program , proses abstraksi yang telah kita bicarakan tadi diatas dapat dilakukan dengan cara membungkus semua kode dan data yang berkaitan ke dalam satu entitas tunggal yang disebut dengan objek, dengan kata lain sebenarnya proses pembungkusan itu sendiri merupakan cara atau mekanisme untuk melakukan abstraksi. Dalam pemrograman tradisional , proses semacam ini dinamakan dengan penyembunyian informasi ( information Hidding ).

Dalam melakukan pembungkusan kode dan data didalam java, terdapat 3 tingkat akses, yaitu :

  • Tingkat Akses Private , Dengan mendeklarasikan data dan method menggunakan tingkat akses private, maka data dan method tersebut hanya dapat diakses oleh kelas yang memilikinya saja. Ini berarti data dan method tersebut tidak boleh diakses atau digunakan oleh kelas-kelas lain yang terdapat di dalam program. Untuk mendeklarasikan suatu data atau method dengan tingkat akses pivate, gunakan kata kunci ” private “.

  • Tingkat Akses Protected, Suatu data maupun method, yang di deklarasikan dengantingkat akses protected dapat diakses oleh kelas yang memilikinya dan juga oleh kelas – kelas yang masih memiliki hubungan turunan.Sebagai contoh, apabila terdapat kelas B yang merupakan turunan dari kelas A, dan data X terdapat pada kelas A, maka kelas B diizinkan untuk mengakses data tersebut, tetapi apabila ada kelas lain (kelas C) yang bukan merupakan turuna dari kelas A, maka kelas C tersebut tidak diizinkan untuk mengakses data x yang terdapat pada kelas A. Untuk mendeklarasikan suatu data atau method dengan tingkat akses protected, gunakan kata kuci ” protected“.

  • Tingkat Akses Public, merupakan kebalikan dari tingkat akses private, Data maupun method yang bersifat publik dapat diakses oleh semua bagian di dalam program. Dengan kata lain , data-data maupun method-method yang dideklarasikan dengan tingkat akses public akan dikenali atau dapat diakses oleh semua kelas yang ada didalam program, baik yang merupakan kelas turunan maupaun yang tidak memiliki hubungan sama sekali. Untuk mendeklarasikan suatu data atau method dengan tingkat akses public, gunakan kata kunci “ public “.

Contoh pengaplikasian Tingkat akses private, public dan protected dalam program :

      • class A

        Class A

        Class A

      • class B

        Class B

        Class B

      • class C

        Class C

        Class C

      • class driver

        Class Driver

        Class Driver

      • output

        Output

        Output

3. Pewarisan (Inherintance)

Inheritance adalah proses pewarisan data dan method dari suatu kelas kepada kelas yang lain. Pewarisan ini bersifat menyeluruh, sehingga semua data dan method yang dimiliki oleh kelas asalnya akan diturunkan kepada kelas baru. Kelas yang mewarisi disebut kelas “SUPER (super class)” dan kelas yang diwarisi disebut “SUBKELAS (sub class)”.

Contoh Penerapan aplikasi Inheritance pada program :

  • class pegawai

    Class Pegawai

    Class Pegawai

  • class manager

    Class Manager

    Class Manager

  • class direktur

    Class Direktur

    Class Direktur

 

  • class driver

    Class Driver

    Class Driver

  • output

    Output

    Output

 

4. Polimorfism

Merupakan kemampuan suatu objek untuk mengungkap banyak hal melalui satu cara yang sama. Sebagai contoh, terdapat kelas A yang diturunkan menjadi kelas B,C dan D. Dengan konsep polimorfisme, kita dapat menjalankan method-method yang terdapat pada kelas B,C dan D hanya dari objek yang di instansiasi dengan kelas A. Polimorfisme sering dinamakan dengan dynamic binding, late binding, maupun runtime binding.

Contoh penerapan Polimorfisme dalam program :

  • class bentuk

    Class Bentuk

    Class Bentuk

  • class persegiPanjang

    Class Persegi Panjang

    Class Persegi Panjang

  • class bujurSangkar

    Class Bujur Sangkar

    Class Bujur Sangkar

  • class segitiga

    Class Segitiga

    Class Segitiga

  • class lingkaran

    Class Lingkaran

    Class Lingkaran

  • class driver

    Class Driver

    Class Driver

  • output

    Output

    Output

Mudah-mudahan apa yang saya tulis disini dapat bermanfaat bagi kawan-kawan semua untuk dapat lebih mengembangkan lagi bakat programmer yang dimiliki oleh kawan-kawan sekalian..

Teruslah berusaha…& jangan merasa puas dengan ilmu yang ada pada saat sekarang ini, .. teruslah mencari…OYI……………!!!!!!!!!!!!!!!!!!!!!!!!

 

Sumber : http://herman-it.blogspot.com/2009/02/konsep-pemrograman-berorientasi-objek.html

About the author

Pantang tolak tugas, Pantang tugas tak terselesaikan , Pantang Ulur Waktu dan Yakin Usaha Sampai . . . . . .