OOP (Object Oriented Programing)


 OOP atau kepanjangannya adalah Object Oriented Program hmmm ato simplenya pemograman berorintasi object.

Berorientasi object sebagai contoh adalah manusia, manusia punya tangan, kaki, hidung mata, telinga, dan sebagainya sampai lengkap menjadi manusia nah komponen komponen tersebut di sebut atribut yang memiliki ciri khas dan dapat digunakan sebagaimana fungsinya, fungsi fungsi dari setiap bagian bagian tadi disebut atribut atau method atau behavior. Behavior atau methode adalah cara, atau metode untuk melakukan sesuatu.

OOP memiliki ciri-ciri yang kalo g ada ciri-ciri tersebut bukan OOP namanya, hehehehee
nah ciri-ciri dari program yang berbasis OOP itu sediri sebagai berikut
1.      inheritance 
a.       adalah pewarisan dalam satu kelas utama yang di turunkan pada subklas dibawahnya, memiliki ciri ada kata kata extend sebagai contoh
                                                              i.      class memasak extends bumbu{
public static void main(){
bumbu  bumbunya = new bumbu();
bumbunya.cabe(“pedas”);
}
}
Nah padahal di kelasnya memasak itu blm punya apa apa maka itu kita juga harus membuat method di class bumbu, mungkin contohnya bisa di lihat seperti berikut
                                                              i.            public class bumbu(){
void cabenya(String cabe){
system.out.println(“bumbunya cabe rasanya = ” + cabe);
}
}

2.      Polymorphism  
Salah satu pilar Pemrograman Berorientasi Objek yang lain adalah polymorphism yaitu kemampuan objek bertipe sama beraksi berbeda terhadap “pesan” yang sama.
Polymorphism adalah suatu object dapat memiliki berbagai bentuk, sebagai object dari class sendiri atau object dari superclassnya. Dan dapat mewarisi lebih dari 1 superclas, kalo inheritence dia cuma 1 super clas yang bisa diwarisi, karena dengan kata kunci extends, tidak bisa misalnya class pintu, extend rumah, gudang, kamar mandi. Nah itu tidak bisa tapi kalo polymorphism bisa tapi dengan kata kunci implement.
- Overloading : penggunaan satu nama method tapi dengan parameter yang berbeda dengan kata lain method yang sama namun parameter atau pesan atau string yang dikirim itu berbeda sehingga menampilkan hal yang berbeda. Contoh




            Class memasak {
Public void main(String [] args){
Menggoreng macamGoreng = new menggoreng();
macamGoreng.gorengIkan(“Ikan Gurame”);
}
}

Public class menggoreng (){
Void gorengAyam(){
}
Void gorengBebek(){
}
Void gorengIkan(){
}
Void gorengIkan(String jenisIkan){
System.out.print(“jenis ikan yang diminta ”+ jenisIkan);
}

}

- Overriding : terjadi ketika deklarasi method subclass dengan nama dan parameter yang sama dengan method dari superclassnya.
            Class memasak {
Public void main(String [] args){
Menggoreng macamGoreng = new menggoreng();
macamGoreng.gorengIkan(“Ikan Gurame”);
}

Public class menggoreng extend bumbu{
Void gorengIkan(){
}
Void gorengIkan(String jenisIkan){
System.out.print(“jenis ikan yang diminta ”+ jenisIkan);
}
Void bumbu(){
System.out.print(“saya pakai asam manis”);

}
}

}
Public class bumbu{
Void bumbu (){
System.out.print(“saya pakai saus padang”);
}
}

3.      Encapsulation
Enkapsulasi adalah pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain. Konsep enkapsulasi sangat penting dilakukan untuk menjaga kebutuhan program agar dapat diakses sewaktu-waktu, sekaligus menjaga program tersebut.
Belajar.Java
class belajar{
public String x =”Pintar”;
private String y = “Java”;
}
Pintar.Java
public class Pintar{

public static void main(String[]args){
Coba panggil = new Belajar();
System.out.println(“Panggil X : “+panggil.x);
System.out.println(“Panggil Y : “+panggil.y);
}}