Selasa, 05 Oktober 2010

Java Fundamental : Bagian 2

Object Oriented Programming ( OOP )

Objek

Objek adalah benda , baik yang berwujud nyata seperti yang dijumpai dalam kehidupan anda, maupun yang tidak nyata , seperti halnya berupa
sistem atau konsep. Dalam OOP , objek adalah unit terkecil pemrograman yang masih memiliki data ( sifat karakteristik ) dan fungsi ( Kegunaan ).

Pena yang digunakan untuk menulis, mobil/motor yang dikendarai saat bepergian, kucing peliharaan , kue , bahkan manusia yang hidup ataupun
sudah mati adalah objek. Pembayaran pajak , sistem antrian tiket kereta api , penyimpanan uang  dibank , komunikasi data port pada I/O (input output ),
semuanya merupakan objek , walaupun bukan merupakan benda nyata , inilah yang disebut objek yang bersifat Abstrak.

Class

Kelas

Kelas adalah wadah atau mungkin bisa disebut cetakan , yang berisi abstraksi (pemodelan) dari suatu objek (benda) , yang mendeskripsikan data ( sifat karakteristik )
dan fungsi yang dimiliki oleh objek tersebut. Misal saya punya cetakan yang didalamnya ada objek Roti Brownies ( wow lezaat... ) ||^_|||| nah kalau cetakan itu adalah tempayan maka roti adalah objek ,
apa buktinya kalau objek itu mempunya fungsi ? , Tentu saja ada , lalu apa fungsinya ? , tergantung pada objek apakah itu ? , karena  ini adalah roti maka fungsi utamanya adalah bikin kenyang perut saya.
Wahahah....!!. It's Cool... !!.

Bagaimana dengan angin ? , Apakah itu bersifat abstrak ? . Ya , angin adalah termasuk objek , juga bersifat abstrak. lalu apa kelas dari angin ? , waduh apa yah pusing... ||>_|||| ,
tergantung loyangnya , kalau dipikir-pikir loyangnya adalah perut kita , berarti objek angin itu adalah berupa eng-ing-eng KENTUT...!!.

WAH KEBANYAKAN MAKAN BROWNIES...!! ||~_||||. Lah kalau yang gak abstrak apa yah Weeeek... enggak mau ngomong ah... , yah tentu saja kotoran kita. Hahaha....!!
silakan dijabarkan lebih luas lagi saya yakin anda mengerti. ||^_||||

Instance ( Instans )

Objek dapat dikatakan juga sebagai instans ( instance ) , dari suatu kelas. Maksudnya objek merupakan perwujudan dari suatu benda, contohnya
ada kelas resep kue , lalu apa instans dari kelas resep kue tersebut , bisa saja ada kue bolu , kue blackforest , kue tart , kue lapis keju. Wah bikin laper yah... ||>_||||.

Data <--------> Variabel <-------> Property

Data adalah sifat karakteristik atau kondisi yang dimiliki oleh suatu objek.
Data <--------> Variabel <-------> Property memiliki pengertian yang sama.
Dan dapat digunakan/dianalogikan secara untuk memperjelas konsep.
Data <--------> Variabel <-------> Property bisa juga disebut sebagai Attribute.
Sebagai ilustrasi , Saya sedang ingin membuat perguruan Silat , yang mempunyai objek diantaranya :

Taekwondo , Jiujitsu , Ninjutsu , Thai Boxing , WhingChun , Karate , Kick Boxing , Boxing , Chimande dan sebagainya.

Method ( Prosedur/Fungsi )

Method adalah prosedur/fungsi yang dimiliki oleh sebuah objek. Karena pada dasarnya merupakan prosedur/fungsi, maka method ini akan mengolah atau mengubah data/variabel
yang ada didalam objek sesuai dengan operasi yang telah ditentukan. Dari proses tersebut menjadi tiga :

1. Mengembalikan suatu nilai akhir.
2. Mengembalikan nilai ,
    yang bersifat sementara untuk kemudian diumpankan ke Method lain.
3. Tidak Mengembalikan nilai sama sekali.

Misalkan saja dari kelas Hewan Darat yang Berkaki Empat. Selain data yang telah didefinisikan sebelumnya. Saya juga dapat menentukan method yang dimiliki oleh kelas tersebut.
Ambilah method cara hewan-hewan tersebut bersuara. sehingga untuk Lembu "Melenguh" , Anjing "Menyalak" , Singa "Mengaum". data ini dideklarasikan didalam ClassBody.

Contoh :

Program Animal Yuyuk

//package YuyukBiksu;

public class MamaliaDarat {

public static void main (String args[]) {

//Mendeklarasikan dan menginisialisasi data
String suaraHewan = "";

System.out.println("\nDEMO KELAS, METHOD, DAN DATA");
System.out.println("-------------------------------\n");
System.out.println("Yuyuk Mempunyai Tiga Macam Suara ");
System.out.println("-------------------------------\n");

Cat yuyukPuzzy = new Cat();
suaraHewan = yuyukPuzzy.mengeong();
System.out.println("Kucing : " + suaraHewan);
System.out.println("------------------------------\n");

Dog yuyukDoggy = new Dog();
suaraHewan = yuyukDoggy.menggongong();
System.out.println("Anjing : " + suaraHewan);
System.out.println("------------------------------\n");

Wolf yuyukSrigala = new Wolf();
suaraHewan = yuyukSrigala.melolong();
System.out.println("Srigala : " + suaraHewan);
System.out.println("------------------------------\n");

System.out.println("--------------A---------------\n");
System.out.println("--------------N---------------\n");
System.out.println("--------------I---------------\n");
System.out.println("--------------M---------------\n");
System.out.println("--------------A---------------\n");
System.out.println("--------------L---------------\n");
System.out.println("------------------------------\n");
System.out.println("------------------------------\n");
System.out.println("------------------------------\n");
System.out.println("--------------Y---------------\n");
System.out.println("--------------U---------------\n");
System.out.println("--------------Y---------------\n");
System.out.println("--------------U---------------\n");
System.out.println("--------------K---------------\n");

System.out.println("------------||^_||||----------\n");

 }
}

class Dog {

//Method yang mengembalikan suara ASU / Anjing
public String menggongong() {
  String Suara = new String ("Guk....Guk....Guk...Guk...!!");
  return Suara;

   }
  }

  class Cat {

  //Method yang mengembalikan suara kucing
  public String mengeong() {
    String Suara = new String ("Meeeeoooong....!!");
    return Suara;

     }
  }

  class Wolf {

  //Method yang mengembalikan suara Srigala
  public String melolong() {
    String Suara = new String ("Auuuuuwww....!!");
    return Suara;

     }
  }

Tidak ada komentar:

Posting Komentar