Jika teman-teman mau belajar atau belum pernah belajar pemrograman berbasis objek, harus tau dulu konsep dasarnya. Konsep dasar yang harus difahami sebelum belajar lebih lanjut.
Pemahaman tentang pemrograman berbasis objek tentu saja kita mulai dari objek itu sendiri. Di dalam dunia nyata, seluruh hal yang kita lihat adalah objek (orang, pacar, orang tua, binatang, gedung, komputer, mouse, keyboard, dll). Program komputer yang kita pelajari seperti C, C++, Java, Delphi, dll juga bisa dilihat sebagai objek.
Kita dapat membagi objek menjadi dua kategori yaitu benda hidup dan benda mati. Objek yang merupakan benda hidup tentu saja mempunyai indra yang digunakan untuk melakukan banyak yang diinginkannya. Sedang objek yang merupakan benda mati tidak dapat melakukan apapun kecuali ada campur tangan dari benda hidup.
Biarpun demikian kedua kategori objek itu (hidup & mati) mempunyai kesamaan. Kesamaannya yaitu keduanya memiliki attributes ; sifat, tanda, ciri, atribut seperti ukuran, bentuk, lebar, panjang, berat, dll. Serta memiliki behaviours ; kelakuan, tingkah laku, tindak tanduk, tindakan , aturan seperti jalan, tidur, belajar, makan, komputer dihidupkan / dimatikan, mobil di gas, dll). Objek-objek yang berbeda dapat memiliki attributes dan behaviours yang sama. Dapat kita bandingkan antara pembaca tulisan ini (orang) dan monyet. Hampir sama kan?
Setelah membaca tulisan diatas, coba anda lihat sebentar objek nyata yang ada disekitar. Untuk tiap objek coba tanyakan pada diri anda sendiri : “Keadaan apa yang mungkin terjadi pada objek ini?” dan “Tingkah laku yang bagaimana yang bisa dilakukan objek ini?”. Setelah melakukan itu, anda pasti akan menemukan bahwa objek-objek itu mempunyai kompleksitas yang beragam. Sebagai contoh objek pintu punya dua kemungkinan keadaan (terbuka, tertutup) dan tiga kemungkinan behaviours (ditutup terkunci, dibuka, ditutup tdk terkunci). Sedang objek yang lain seperti lampu punya dua keadaan (mati, hidup) dan dua kemungkinan behaviours (dimatikan, dihidupkan). Anda pasti juga akan menemukan bahwa suatu objek dapat menjadi bagian atau terdapat dalam objek lain. Seperti objek meja dapat berada didalam objek kamar. Objek-objek seperti inilah yang akan di terjemahkan dalam pemrograman berbasis objek.
Dalam dunia nyata, anda pasti sering menemukan objek yang sama satu dengan yang lainnya. Seperti, banyak televisi yang ada (bukan banyak lagi, puluhan bahkan ratusan) yang dibuat perusahaan yang sama dan modelnya juga sama. Tiap televisi mempunyai blueprints yang tentunya komponennya juga sama. Di dalam pemrograman objek, kita dapat menyebut bahwa televisi yang anda miliki adalah instance dari class suatu objek yaitu televisi. Sebuah class adalah suatu blueprint dari tiap objek individu yang ada.
Bermacam-macam objek biasanya mempunyai persamaan dengan yang lain. Televisi layar datar, televisi layar biasa, keduanya mempunyai atribut yang sama (ukuran, berat,dll). Tapi terdapat perbedaan juga diantara televisi yang ada, beberapa televisi juga sudah dilengkapi dengan video player, cd/dvd player, support radio, dll.
Untuk hal diatas, dengan pemrograman berbasis objek dapat dilakukan pewarisan atribut dan behaviour dari class yang satu ke yang lain (inheritance). Untuk atribut dan behaviour yang sama dapat diwariskan dari class diatasnya (televisi) sedang atribut dan behaviour yang tidak terdapat pada televisi pada umumnya menjadi atribut objek itu sendiri.
Selamat belajar ..