Rabu, 22 Februari 2017

Class dan Object

Kelas dan Objek dalam Object Oriented Programming

Prinsip pemrograman berorientasi objek adalah membagi modul program yang besar menjadi kumpulan objek-objek yang saling berinteraksi, dengan prinsip seperti ini maka pemrograman berorientasi objek lebih menekankan pada proses yang terjadi antar objek. Sehingga dikemudian akan terdapat kemungkinan sebuah program merupakan kumpulan objek-objek yang saling bertukar informasi dan data dan memiliki fungsi dan tanggung jawab masing-masing.
Kelas dan objek merupakan satuan yang berbeda, Kelas Merupakan kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu tujuan tertentu dimana didalamnya terdapat kumpulan atribut dan method,
contoh kelas : binatang, kendaraan, benda dsb.
Sedangkan objek merupakan bentuk representasi dari sebuah kelas, membungkus data dan fungsi bersama menjadi suatu unit atau entitas dalam sebuah program komputer. pada dasarnya ada 2 karakteristik yang utama pada sebuah objek ;
  1. Objek memiliki attribut sebagai status yang disebut Stat
  2. Objek memiliki tingkahlaku yang kemudian disebut Method
Contoh sederhananya :
Objek motor memiliki attribute : Roda, Warna, Merk,. Kemudian objek motor tersebut memiliki tingkahlaku / method : pindah gerigi, kecepatan menaik, kecepatan menurun.
contoh objek :
-          Anjing, kucing, kuda : dari kelas binatang
-          Sepeda motor, mobil, pesawat, kapal : dari kelas kendaraan.
-          Batu, air, api, udara : dari kelas benda. dsb


Kelas
            Dalam bahasa pemrograman java sebuah file berekstensi *.java harus memiliki sebuah class public dan dapat memiliki beberapa class non public. Contoh deklarasi sebuah kelas binatang

public class binatang {

int jmlKaki;
String warna;
public String suara;
    
     public void  bersuara()
       {
            System.out.println(suara);
        }  
}

Dari deklarasi kelas diatas terdapat beberapa attribute : jmlKaki, warna, suara. Method pada kelas binatang diatas adalah bersuara.

Objek
merupakan bentuk representasi dari sebuah kelas, membungkus data dan fungsi bersama menjadi suatu unit atau entitas dalam sebuah program komputer, sebuah kelas dapat diinstansiasikan menjadi banyak objek, sebagai contoh sebuah kelas binatang dapat diinstansiasikan menjadi objek : kuda, ayam, kambing, harimau dan sebagainya. Contoh objek sbb :

public class ujibinatang {
   public static void main(String[] args)
   {
       binatang ayam = new binatang();
       ayam.suara="Kukuruyuuk..";
       binatang kuda = new binatang();
       kuda.suara="Hieegggh ..";
       binatang harimau = new binatang();
       harimau.suara="Graaaaauum ..";

      
       ayam.bersuara();
       kuda.bersuara();
       harimau.bersuara();
   
   }
}

Dari contoh program diatas dapat diketahui terdapat 3 objek : ayam, kuda, harimau. Dimana masing-masing objek merupakan hasil instansiasi dari sebuah kelas binatang.


9. APA ITU INHERITANCE??
Seperti halnya dalam arti Pewarisan itu sendiri yang dimaksud dengan Inheritance adalah dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan. Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.
Seperti halnya manusia pada umumnya terdapat orang tua dan anak pada PBO juga dikenal parent class atau base class dan subclass atau child class.Dimana subclass atau childclass mewarisi semua data yang ada di parent class atau base class atau dapat disimpulkan jika subclass atau childclass adalah perluasan dari parent class atau base class.
Dalam contohnya kita dapat mengambil contoh mahluk hidup sebagai parent class dengan method bernafas,bergerak,dan berkembang biak.
Dan kita menentukan manusia,hewan,dan tumbuhan sebagai childclass dmn method dari parent class terdapat dalam childclass.
atau dalam deklarasinya dapat kita tulis public class manusia extends mahluk_hidup { … }
KEUNTUNGAN INHERITANCE :
1. Subclass menyediakan state/behaviour yang spesifik yang membedakannya dengan superclass, hal ini akan memungkinkan programmer Java untuk menggunakan ulang source code dari superclass yang telah ada.
2. Programmer Java dapat mendefinisikan superclass khusus yang bersifat generik, yang disebut abstract class, untuk mendefinisikan class dengan behaviour dan state secara umum.
ISTILAH INHERITANCE :
  • Extends : ini adalah keyword agar sebuah class menjadi subclass.
  • Superclass : Menunjukkan class yang berarti parent class dari subclass/class anak.
  • Subclass : adalah class anak atau turunan dari superclass/parent class.
  • Super Keyword : untuk memanggil konstruktor dari superclass atau menjadi variabel yang mengacu pada superclass.
  • Methode Overriding : Pendefinisian ulang method yang sama pada subclass
Dalam inheritance, method overriding berbeda dengan method overloading.
Jika method overriding adalah mendefinisikan kembali method yang sama, baik nama method maupun signature atau parameter yang diperlukan dalam subclass,
Sedangkan method overloading adalah mendefinisikan method yang memiliki nama yang sama saja.



Tidak ada komentar:

Posting Komentar