Pilar Pemrograman Berorientasi Objek 1

Dalam Pemrograman Berorientasi Objek / PBO / OOP yang sering kita dengar, terdapat tiga pilar utama yang mendasarinya terutama untuk Java. Dalam pembahasan ini akan mengulas OOP dalam bahasa pemrograman Java. Tiga pilar tersebut antara lain :

  1. Inheritance (Pewarisan)
  2. Encapsulation (Enkapsulasi)
  3. Polymorphism (Polimorfisme / Banyak bentuk)

Mari kita bahas satu persatu bagian-bagian di atas.

  1. Inheritance
    Inheritance atau sering disebut pewarisan adalah konsep OOP yang mengijinkan sebuah Class mempunyai turunan (child). Dalam inheritance ada dua posisi Class. Pertama kelas induk atau sering disebut parent class. Dan kelas anak atau sering disebut child class. Mungkin di antara kita ada juga yang menyebutnya superclass dan subclass. Itu sih terserah kitašŸ˜€
    Subclass akan mewarisi sifat-sifat dari superclass yaitu class induknya. Dan subclass bisa menambahkan sifat-sifat mereka sendiri yang lebih spesifik.Dalam Java, untuk mendeklarasikan subclass , menggunakan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class-nya[access_modifier] nama_class extends nama_parentclassBerikut contoh kodenya , simpan dengan nama DemoPewarisan.java

    /**
    * @author Fandi Akhmad
    * Date time :9:35:07 PM
    * FilenameĀ  : DemoPewarisan1.java
    */
    class A{
    private int a;
    
    public void setA(int nilai){
    a = nilai;
    }
    public int getA(){
    return a;
    }
    }
    
    // Membuat class turunan dari Class A.
    class B extends A{
    private int b;
    
    public void setB(int nilai){
    b = nilai;
    }
    public int getB(){
    return b;
    }
    }
    
    class DemoPewarisan{
    public static void main(String args[]){
    B obj = new B();
    
    obj.setA(20);
    obj.setB(30);// Mendapatkan nilai yang terdapat dalam obj Class B
    System.out.println("Nilai A = "+obj.getA());
    System.out.println("Nilai B = "+obj.getB());
    }
    }

    Sekian tutorial singkatnya ya… maaf kalau ada yang kurang, masih belajar menerangkanšŸ™‚
    Semoga bermanfaat..

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