My Weblog

Just another WordPress.com weblog

Perbedaan Structure, Class, dan Object

Perbedaan Structure, Class, dan Object

Ketika pertama kali kita mempelajari Object Oriented Programming (OOP), seringkali kita tidak dapat membedakan class dan object. Bahkan ketika kita mulai menulis program kita, kadang kita tidak dapat membedakan antara object dan pointer yang mengacu pada object tersebut. Berikut adalah penjelasan yang mungkin dapat membantu untuk membedakan antara structure, class, dan object.

Structure

Structure adalah satu atau lebih variabel (dengan tipe yang dapat berbeda) yang dikelompokan di dalam sebuah nama. Berikut adalah contoh structure Hewan di dalam bahasa C:

struct Hewan
{
   char[15] jenis;
   int jumlah kaki;
};


Class

Class hampir serupa dengan structure, namun bedanya adalah class dapat memiliki fungsi di dalamnya. Jadi, class adalah beberapa variabel dan fungsi/method yang dikelompokkan di dalam sebuah nama. Variabel-variabel tersebut biasa disebut field dan biasanya merupakan atribut dari class tersebut. Fungsi/method adalah aksi yang dapat dilakukan oleh class tersebut. Perhatikan contoh code di bawah ini:

public class Kucing
{
   public int jumlahKaki;
   public string tempatAsal;

   public void Makan()
   { /* ... */ }
   public void Jalan()
   { /* ... */ }
}

Field jumlahKaki dan tempatAsal adalah atribut yang dimiliki oleh semua kucing. Sedangkan Makan() dan Jalan() adalah aksi yang dapat dilakukan oleh semua kucing.

Object

Object adalah realisasi dari sebuah class. Ketika kita membuat sebuah class, tidak berarti kita membuat sebuah object. Bayangkan jika kita menjadi seorang dewa. Lalu kita menentukan bahwa ada jenis makhluk bernama Sapi di bumi. Hal ini dapat disamakan dengan kita membuat sebuah class bernama sapi. Ketika kita menciptakan seekor sapi, seekor sapi itulah yang disebut object. Berikut adalah ilustrasi langkah yang kita lakukan sejak membuat class, pointer, dan objectnya (Code yang digunakan di dalam bahasa C#):
objek

Aku copas dari http://erico-khewanxing.spaces.live.com

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: