OOP


Apa Itu OOP?

Pemrograman Berorientasi Objek (OOP) tidak selalu mempunyai kesepakatan konsep yang sama dari satu bahasa komputer ke bahasa komputer lainnya. ada tiga Konsep OOP:

  • enkapsulasi, yang mencegah pengaksesan langsung ke fungsi atau variabel yang ingin dilindungi;
  • inheritance, yang memungkinkan pendefinisian kelas baru yang diturunkan dari kelas yang sudah ada;
  • polimorfisme, yang memungkinkan pengaksesan ke suatu metode bergantung dari tipe data objek yang diakses. Proses ini disebut juga dengan dynamic binding, yaitu penentuan alamat dari metode atau variabel yang akan diakses dilakukan pada saat run time.

Inheritance

  • Inheritance (Pewarisan) merupakan salah satu dari tiga konsep dasar OOP.
  • Konsep inheritance ini mengadopsi dunia riil dimana suatu entitas/obyek dapat mempunyai entitas/obyek turunan.
  • Dengan konsep inheritance, sebuah class dapat mempunyai class turunan.
  • Suatu subclass dapat mewarisi apa-apa yang dipunyai oleh parent class.
  • Kesimpulannya, boleh dikatakan bahwa suatu subclass adalah tidak lain hanya memperluas (extend) parent class-nya.

formatnya seperti ini:

public class B extends A {

}

berikut ini adalah contoh kasusnya:

buat classs di java dengan nama TV

public class TV {

int volume=0;

int channel=0;

//Method

void ubahchannel(int pindahchannel){

channel=channel+pindahchannel;

System.out.println(“Channel:”+channel);

}

void tambahvolume(int tambahanvolume){

volume=volume+tambahanvolume;

System.out.println(“Volume:”+volume);

}

}

kemudian buat juga class lagi dengan nama TVAction

class TVAction

maka hasil ouputnya eperti dibawah ini:

ouput classTVAction


kemudian buat satu class lagi dengan nama TVFlat. Pada class ini akan ditunjukkan Konsep Inheritance dengan menggunakan extends. Pada class ini juga ditambahkan satu ouput tambahan lagi yaitu setpicture.

class TVFlat extends TV{

public void setpicture(int nilaipicture) {

System.out.println(“Set Picture:” + nilaipicture);

}

}

Buat juga class dengan nama TVFlatAction

classTVFlatAction

maka output yang dihasilkan akan seperti dibawah ini:

outputclassTVFlatAction