Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST
PERTEMUAN XII KELAS DAN OBYEK
Kelas Kelas dalam kehidupan sehari-hari dapat kita
katakan sebuah kelompok yang memiliki anggota-anggota yang mempunyai sifat dan tingkah laku yang serupa atau secara umum serupa. Kelompok disini dapat kelompok benda maupun mahluk hidup. Dalam pemrograman java, kelas (class) adalah program java yang akan dieksekusi
Deklarasi Kelas Secara umum deklarasi kelas dapat termasuk komponenkomponen sebagai berikut : Modifier seperti public, private dan modifier lainnya Nama Kelas, dengan diawali huruf besar Nama dari induk kelasnya (superclass), jika ada diawali dengan kata kunci extends. Sebuah kelas hanya boleh mempun yai satu induk/superclass. Daftar interface (dipisahkan dengan titik koma) yang akan diimplementasikan dalam kelas, jika ada, diawali dengan kata kunci implements. Sebuah kelas boleh mengimplementasikan lebih dari satu interface. Isi dari kelas yang diawali dan diakhiri dengan tanda kurung kurawal buka dan tutup { }.
Bentuk umum deklarasi kelas : public class KelasKu extends KelasIndukKu implements Interfaceku { // deklarasi field, konstruktor dan method }
Konstruktor Kelas Sebuah kelas berisi konstruktor yang akan di
Gunakan untuk menciptakan obyek dari kelas. Jika dalam kelas kita tidak membuat konstruktor maka Kompiler secara otomatis menyediakan sebuah konstruktor yang tanpa argumen, default untuk kelas yang tanpa konstruktor. Deklarasi konstruktor nampak seperti deklarasi method – kecuali bahwa konstruktor menggunakan nama yang sama dengan nama kelas dan tidak mempunyai tipe kembalian. Untuk menciptakan sebuah objek kelas yang baru, maka sebuah konstruktor dipanggil dengan operator new.
Contoh : public class PersegiPanjang { public int panjang; public int lebar; // kelas persegi panjang mempunyai konstruktor public PersegiPanjang (int panjangAwal, int lebarAwal) { panjang = panjangAwal; lebar = lebarAwal; } }
Deklarasi variabel anggota Kelas, ada beberapa macam variabel yang ada : Variabel anggota dalam kelas – ini disebut
fields/variabel kelas. Variabel kelas bisa diakses oleh method2 yang ada didalam kelas tersebut. Variabel dalam sebuah method , ini disebut variabel lokal dan hanya dapat diakses didalam method tersebut. Variabel yang berada dalam deklarasi method atau disebut parameter.
Akses Modifier
Kita akan membahas modifier : Modifier public – field/variabel ataupun method ini bisa diakses dari semua kelas Modifier private – field/variabel ataupun method hanya bisa diakses dalam kelas itu sendiri.
Encapsulation Dalam enkapsulasi field-field ataupun variabel maupun method akan dibuat menjadi private, kecuali untuk field yang
diperuntukkan untuk dapat diakses dari luar kelas. Ini berarti bahwa field-field tersebut hanya bisa diakses secara langsung dari kelas tersebut
Inheritance / Pewarisan Sebuah kelas bisa memiliki satu superclass atau satu kelas
induk. Artinya Kelas induk akan mewarisi semua sifat yang ada kepada kelas turunannya. Contoh : public class Balok extends PersegiPanjang { } Ini artinya kelas Balok merupakan turunan dari kelas PersegiPanjang, dimana kelas Balok akan mewarisi semua field dan method yang ada pada kelas PersegiPanjang, disamping kelas Balok sendiri memiliki sifat-sifatnya sendiri.
Contoh : import java.util.Scanner; public class PersegiPanjang { public static int panjang; public static int lebar;
public static PersegiPanjang objek = new PersegiPanjang(); public static Scanner masuk = new Scanner(System.in); public PersegiPanjang() { panjang=0; lebar=0; } public int hitungLuas() { int luas; luas=panjang*lebar; return(luas); }
public int inputPanjang() { System.out.print("Masukkan panjang : "); panjang=masuk.nextInt(); return(panjang); } public int inputLebar() { System.out.print("Masukkan lebar : "); lebar=masuk.nextInt(); return(lebar); } public static void main(String args[]) { System.out.println("Program Menghitung luas Persegi Panjang"); System.out.println("======================================="); System.out.println(""); objek.inputPanjang(); objek.inputLebar(); System.out.println("Luas Persegi Panjang : "+objek.hitungLuas()); }
}
Contoh Pewarisan : public class Balok extends PersegiPanjang { public static int tinggi; public static Balok obj = new Balok();
public Balok() { tinggi = 0; } private int volume() { int volume; volume=objek.hitungLuas()*tinggi; return(volume); }
public int inputTinggi() { System.out.print("Masukkan tinggi : "); tinggi=masuk.nextInt(); return(tinggi); }
public static void main(String args[]) { System.out.println("Program Menghitung Volume"); System.out.println("========================="); System.out.println(""); objek.inputPanjang(); objek.inputLebar(); obj.inputTinggi(); System.out.println("Volume Balok : "+obj.volume()); } }