Konsep OOP di Java

Mengenal Object, Class, Method, dan Property

Burung itu ibarat objek yang punya nama, mata, kaki, sayap, warna, jenis. Burung juga dapat terbang, berkicau dan berjalan. Mata, kaki sayap dan warna dalam dunia pemrograman disebut juga atribut atau properties. Sedangkan aktifitasnya yaitu terbang, berkicau dan berjalan dalam dunia pemrograman disebut sebagai method.

Class adalah cetakan, template, prototype,tempat dari object, sedangkan object adalah isi dari kelas. Satu kelas dapat mempunyai object lebih dari satu atau banyak. Contoh sederhananya seperti berikut : satu cetakan bias menghasilkan banyak kue.

Contoh penerapannya di Java :

public class Burung {

String nama; //atribut nama

String jenis; //atribut jenis

String warna; //atribut warna

String sayap; //atribut sayap

//method terbang

public void terbang(){

this.sayap = “mengepak”;

System.out.println(“Burung “+this.nama+” Sedang Terbang”);

}

//method tidur

public void tidur(){

this.sayap = “diam”;

System.out.println(“Burung “+this.nama+” Sedang Tidur”);

}

}

Dari contoh diatas bisa diambil pengerian Attribute adalah Berbagai variable yang mengitari class, dengan nilai datanya bisa ditentukan di object. nama, warna, sayap, dan jenis adalah atribute dari class Burung. Method adalah implementasi dari bagaimana aktifitas / bekerjanya sebuah class. terbang dan tidur adalah method atau behaviour dari class Burung

Ada 3 Konsep Dasar OOP pada Java :

A. Encapsulation

Encapsulation adalah pembungkus, pembungkus disini dimaksudkan untuk menjaga suatu proses program agar tidak dapat diakses secara sembarangan atau di intervensi oleh program lain.

Dalam OOP Encapsulation di wujudkan dalam bentuk “class”. Seperti yang telah dijalaskan sebelumnya dalam sebuah class terdapat property dan method yang memiliki hak akses tertentu terhadap environment/lingkungan-nya, hak akses ini biasa di sebut Access Modifier, access modifier terdiri dari private, protected, dan public.

• private

memberikan hak akses hanya kepada anggota class tersebut untuk menggunakan dan/atau mengubah nilai dari property atau method tersebut.

• protected

memberikan hak akses kepada anggota class nya dan anggota class hasil inheritance (penurunan sifat) dari class tersebut.

• public

memberikan hak akses kepada property dan method agar dapat digunakan diluar class tersebut.

Contoh Program Encapsulation:

public class Siswa {

public String nama;

public String nrp;

public void Info() {

System.out.println(“Saya adalah”);

System.out.println(“Nama ” + nama);

System.out.println(“Nrp ” + nrp);

}

}

// Setelah itu kita buat New Class lagi dengan nama IsiData

public class IsiData {

public static void main(String[] args) {

Siswa IT = new Siswa();

IT.nama = “Mirna”;

IT.nrp = “0320110013″;

IT.Info();

}

}

B. Inheritance

inheritance adalah pewarisan yang artinya sebuah class dapat mewarisi atribut dan metho dari class lain. untuk mendeklarasikan suatu class sebagai subclass dilakukan dengan cara menambahkan kata kunci extends setelah deklarasi nama class, kemudian diikuti dengan nama parent class-nya. Kata kunci extends tersebut memberitahu kompiler Java bahwa kita ingin melakukan perluasan class.

Contoh Programnya :

public class Mamalia () {

System.out.println(“Ciri umum mamalia adalah bernapas dengan paru-paru, ” +

“berkembang biak dengan cara beranak”);

}

class () Paus extends Mamalia () {

String x = “Ikan Paus”;

System.out.println(“Mamalia yang Anda pilih adalah “+ x );

System.out.println(“Mamalia ini berada di laut”);

System.out.println(“Paus termasuk jenis mamalia terbesar”);

}

class Sapi () extends Mamalia (){

String x = “Sapi”;

System.out.println(“Mamalia yang Anda pilih adalah “+ x );

System.out.println(“Mamalia ini berada di darat”);

System.out.println(“Sapi termasuk jenis mamalia pemamah biak”);

}

C. Polymorism

suatu aksi yang memungkinkan pemrogram menyampaikan pesan tertentu keluar dari hirarki obyeknya, dimana obyek yang berbeda memberikan tanggapan/respon terhadap pesan yang sama sesuai dengan sifat masing-masing obyek.

Polymorism dapat berarti banyak bentuk, maksudnya yaitu kita dapat menimpa (override), suatu method, yang berasal dari parent class (super class) dimana object tersebut diturunkan, sehingga memiliki kelakuan yang berbeda.

Contoh program java nya :

Simpan dengan nama BeautyfullMahasiswa.java

public class BeautyfullMahasiswa extends Mahasiswa{

public void printNama(){

System.out.println(“Hallo, saya Mahasiswa yg cantik n baik”);

Super.printNama();

}

}

Simpan dengan nama Main.java

public class Main{

public static void main(String[] args]) {

BeautyfullMahasiswa mhs = new BeautyfullMahasiswa();

mhs.setNim(“0320110013”);

mhs.setNama(“Mirna Puji Rahayu”);

mhs.printNim();

mhs.printNama();

}

}

Kemudian compile dan run.

C:\>javac BeautyfullMahasiswa.java

C:\>javac Main.java

C:\>java Main

Kontruksi objek mahasiswa

Nim:0320110013

Hallo, saya Mahasiswa yg cantik n baik

Nama: Mirna Puji Rahayu

C:\>

Terlihat bahwa disini kita mengoverride method printNama(), dengan menambahkan beberapa teks tambahan, sehingga method printNama(), pada class BeautyfullMahasiswa, memiliki perilaku yang berbeda dengan class Mahasiswa.

Tinggalkan komentar