Memahami OOP : Object

Dalam OOP, object merupakan satu istilah penting dan perlu difahami oleh sesiapa yang ingin menggunakan OOP. Object dalam dunia komputer hanyalah satu block memori didalam RAM, manakala di dalam dunia programming, Object adalah satu ciptaan yang berasal dari pada satu template(class) yang mempunyai kebolehan untuk berinteraksi dengan object-object sesekeliling mereka dan berkebolehan memanipulasi diri mereka sendiri.

2 Jenis Object
- concrete : bicycle,animal,laptop
-intelectual : rules and regulation, waktu, bank account

Untuk paham OOP, kita kene paham bagaimana keadaan sebenar object kita di dalam RAM. Contohnya, kita ada satu class Dog, dan kita nak buat object yang bernama tommy dari class tersebut.
Kalau lihat gambar kat atas, bila kita buat object tommy, kita tak buat a whole new block yang mempunyai data dari class Dog. Tapi, kita just buat satu block yang mengandungi alamat kat mane block class Dog tadi berada, disamping beberapa data lain yang perlu.

Kenapa perlu paham mende ni?
Ini kerana, 4 konsep OOP berkait rapat dengan keadaan object kita didalam RAM, terutamanya Polymorphism.

Everything is an Object in Java
Bagi Java, semua benda adalah object. Even class Dog tadi pon satu object....So ini bermakna dalam block memori bagi class Dog dalam RAM tadi ade alamat juga la ye???Kalau ade, class ape??? Dalam Java, semua benda yang kita kod adalah object. Class Dog yang kita buat tadi pon ade class dia tersendiri iaitu class yang bernama Object. Lihat gambar kat bawah :

Setiap class yang kita cipta akan inherits daripada class Object yang sudah siap sedia ada dalam Java. And kalau perasan, setiap object yang kita buat dalam Java mesti ada method toString() walaupun kita tak buat pon coding tu..Ni sebab method toString() tu sudah di inherits dari class Object tadi. 

Kesimpulan :
- Object dalam dunia komputer hanyalah secebis data dalam RAM yang mengandungi alamat dimana class asal dia berada, selain dari data-data lain yang berkait dengan object itu sahaja. 
- Object dalam dunia programming adalah ciptaan dari class yang boleh berinteraksi dengan object-object lain dan berkebolehan memanipulasi diri sendiri.
- Semua object dalam Java berasal dari class Object yang sedia ada dalam Java. Meaning that, in Java, everything is an Object. 

Artikel Berkaitan