Anda di halaman 1dari 8

BAB 3

PEMROGRAMAN BERORIENTASI OBYEK


A. Pokok Bahasan
1. Konsep Pemrograman Berorientasi Obyek
2. Class
3. Obyek
4. Atribut
5. Method
B. Tujuan Belajar
1. Mampu memahami konsep pemrograman berorientasi obyek
2. Mampu mendeklarasikan class
3. Mampu mendeklarasikan obyek
4. Mampu mendeklarasikan atribut
5. Mampu mendeklarasikan method
C. Dasar Teori
1. Konsep Pemrograman Berorientasi Obyek
Di dalam ilmu pemrograman, ada beberapa paradigma yang biasa digunakan
dalam menyelesaikan permasalahan. Salah satunya adalah paradigma
pemrograman berorientasi obyek. Pemograman Berorientasi Object adalah sebuah
paradigma dalam pemograman yang menyelesaikan masalah program dengan
menyediakan obyek-obyek (terdiri dari beberapa attribute dan method) yang saling
berkaitan dan disusun kedalam satu kelompok atau yang disebut dengan class.
Obyek-obyek tersebut akan saling berinteraksi untuk menyelasaikan masalah
program yang rumit.
Berbagai benda di sekitar kita adalah obyek nyata yang dapat dilihat, seperti :
kucing, meja, rumah, orang , dll. Paradigma PBO ini menitikberatkan pada konsep
obyek sebagai elemen dasar dari program.
2. Class dan Obyek
Class adalah cetak biru (blue print) dari obyek atau dengan kata lain sebuah
class menggambarkan ciri-ciri obyek secara umum. Pada pemrograman
berorientasi obyek, kita belajar bagaimana membawa konsep obyek dalam
kehidupan nyata menjadi obyek dalam dunia pemrograman. Setiap obyek dalam

23 | P a g e
dunia nyata memiliki 2 elemen penyusunnya, yaitu atribut dan perilaku/behaviour.
Sebagai contoh, sepeda memiliki atribut yaitu warna, merk, jumlah roda, ukuran
roda. Sedangkan perilaku sepeda adalah berjalan, berhenti, belok, menambah
kecepatan, mengerem.
Pada saat obyek diterjemahkan ke dalam konsep PBO, maka elemen
penyusunnya juga terdiri atas 2 bagian, yaitu :
Atribut, merupakan ciri-ciri yang melekat pada suatu obyek.
Method, merupakan fungsi (sekumpulan perintah) yang digunakan untuk
memanipulasi nilai-nilai atribut atau untuk melakukan hal-hal yang
dapat dilakukan suatu obyek.
Obyek dalam konsep PBO memiliki keadaan dan perilaku yang sama seperti
halnya obyek di dunia nyata, karena obyek dalam konsep PBO merupakan
representasi obyek dari dunia nyata. Obyek dalam PBO merepresentasikan keadaan
melalui variabel-variabel (Atribut), sedangkan perilakunya direpresentasikan
dengan method (yang merupakan suatu fungsi yang berhubungan dengan perilaku
obyek tersebut maupun berhubungan dengan atribut dari obyek tersebut). Obyek
yang memiliki kesamaan atribut dan method dapat dikelompokkan menjadi sebuah
Class. Dan obyek-obyek yang dibuat dari suatu class itulah yang disebut dengan
Instant of class.

Gambar 6 Memindahkan obyek di dunia nyata ke dalam konsep PBO

Dari gambar 6, terlihat ada class Orang yang memiliki atribut nama,
tinggiBadan, beratBadan, warnaRambut, warnaKulit, jenisKelamin dan

24 | P a g e
berkacamata. Sedangkan method dari class Orang adalah menangis() dan tertawa().
Class dideklarasikan sebagai berikut:

accessModifier class namaClass {


deklarasiAtribut
deklarasiMethod
}

Berikut ini contoh dari class SepedaMotor:

package KonsepOOP;

public class SepedaMotor {


private String merk;
private long harga;

public void setMerk(String merkMotor) {


merk = merkMotor;
}

public String getMerk() {


return merk;
}

public long getHarga(long hargaMotor) {


return harga = hargaMotor;
}
}

Untuk membuat obyek dari class dengan menggunakan keyword new. Sintaks
untuk instansiasi obyek adalah sebagai berikut:

namaClass namaObyek = new namaClass();

Contoh dari instansiasi class SepedaMotor sebagai berikut:

25 | P a g e
package KonsepOOP;

public class Main {


public static void main( String[] args )
{
SepedaMotor motor = new SepedaMotor();
motor.setMerk("Vario");
System.out.println("Merk motor ini adalah
"+motor.getMerk());
System.out.println("Harga motor ini adalah
"+motor.getHarga(18000000));
}
}

Siklus hidup sebuah obyek adalah creation (membuat), use (menggunakan)


dan destruction (menghapus). Pada Java, Garbage Collection adalah mekanisme Java
untuk menghapus suatu obyek dari memori tanpa perlu dideklarasikan secara
eksplisit dalam program. Garbage Collection berfungsi untuk meningkatkan
management memory yaitu dengan menghemat penggunaan memori. Java akan
menghapus sebuah obyek yang tidak diperlukan atau tidak di referensikan lagi.
Ruang memori pada obyek tersebut akan dimanfaatkan untuk keperluan lain
sehingga tidak ada pemborosan memori. Garbage Collection merupakan salah satu
mekanisme dari fitur JVM (Java Virtual Machine). Ini adalah salah satu kelebihan
dari bahasa pemrograman Java.

3. Atribut dan Method


Pada contoh program di atas, class SepedaMotor memiliki atribut merk dan
harga. Sedangkan contoh method dari class SepedaMotor adalah getMerk() dan
getHarga. Cara deklarasi atribut sebagai berikut:

accessModifier tipeData namaVariabel;

//contoh:

26 | P a g e
private String Merk;

Adapun deklarasi method dilakukan dengan cara sebagai berikut:

accessModifier returnType namaMethod(parameter)


{
statemen1;
statemen2;
statemen3;
}

//contoh:

public void setMerk(String merkMotor) {


merk = merkMotor;
}

Parameter adalah suatu nilai yang dikirimkan/diberikan kepada method. Parameter


dalam sebuah method merupakan pilihan. Sebuah method dapat menerima
beberapa parameter atau tidak sama sekali. Adapun ciri – ciri method antara lain:
• Dapat mengembalikan satu nilai atau tidak sama sekali.
• Dapat menerima beberapa parameter (argument) yang dibutuhkan atau
tidak ada sama sekali.
• Setelah method selesai dieksekusi, proses kembali kepada method yang
memanggilnya.
Pemberian parameter kepada method ada 2 cara yaitu dengan Pass-by-value dan
Pass-by-reference. Secara default, semua tipe data primitif ketika dikirimkan
kepada sebuah method adalah dengan pass-by-value. Sedangkan Pass-by-
reference terjadi ketika parameter yang dikirimkan biasanya berupa obyek. Ketika
sebuah pass-by-reference terjadi, alamat memori dari nilai pada sebuah variabel
dikirimkan pada saat pemanggilan method.
Secara umum ada 2 macam yaitu method yang mengembalikan nilai dan
method yang tidak mengembalikan nilai. Pengembalian nilai dengan perintah

27 | P a g e
return. Return value adalah suatu nilai yang dikirimkan/dikembalikan dari method
yang dipanggil kepada pemanggil.

package method1;

public class Method1 {


//bentuk 1 : method tanpa return value dan tanpa parameter
public void cetak() {
System.out.println("Saya adalah method tanpa return
value dan tanpa parameter");
}

//bentuk 2 : method tanpa return value, dengan parameter


public void cetak2(String data) {
System.out.println(data);
}

//bentuk 3 : method dengan return value, tanpa parameter


public int hitung1() {
int x=5;
int y=6;
int kali;
return kali = x*y;
}

//bentuk 4 : method dengan return value dan dengan


parameter
public int hitung2(int a, int b) {
int tambah;
tambah = a+b;
return tambah;
}

public static void main(String[] args) {


// TODO code application logic here
Method1 x = new Method1(); // membuat obyek

28 | P a g e
x.cetak();
String kata;
kata = "saya adalah method tanpa return value tapi
dengan parameter";
x.cetak2(kata);
int hasilkali;
hasilkali=x.hitung1();
System.out.println("saya adalah method dengan return
value, tanpa parameter. return value saya adalah
:"+hasilkali);
System.out.println("saya adalah method dengan return
value dan dengan parameter. return value saya adalah :" +
x.hitung2(6,7));
}
}

Method Static adalah method yang dapat dipakai tanpa harus melakukan
instansiasi class. Method static hanya dimiliki oleh class dan tidak dapat digunakan
oleh instance (atau obyek) dari suatu class. Method static dibedakan dari
penggunaan keyword static.

Untuk memanggil method static dengan cara:

Classname.staticMethodName(params);

//Contoh:
System.out.println(“Hello world”);
int i = Integer.parseInt(“10”);
String hexEquivalent = Integer.toHexString(10);

D. Percobaan
1. Buatlah class dengan nama Hewan seperti di bawah ini:

public class Hewan {


String nama;

29 | P a g e
int kaki;
String makanan;
char kategori;

public void isBuas(String namaHewan,char kategoriHewan) {


if(kategoriHewan == 'T')
System.out.println("Hewan " + namaHewan + " adalah
hewan Buas");
else
System.out.println("Hewan " + namaHewan + " adalah
hewan jinak ");
}

public void suara(String namaHewan, String suaraHewan) {


System.out.println("Suara " + namaHewan + " adalah "
+suaraHewan);
}

public static void main(String[] args) {


Hewan x = new Hewan();
x.nama = "Kucing";
x.kaki=4;
x.makanan="rumput";
x.kategori = 'B';
x.suara(x.nama,"meong, meong");
x.isBuas(x.nama, 'B');
}
}

2. Jalankan Main.java dan amati hasilnya!

E. Latihan
1. Buatlah program untuk meng-generate deret dengan ketentuan terdapat
suatu:
a. Nilai awal

30 | P a g e

Anda mungkin juga menyukai