Pada pertemuan ini akan kita bahan tentang alasan megapa kita mempelajari OOP :
1. Mengapa kita harus mempelajari OOP ?
2. Apa Itu OOP ?
3. Object dan Kelas
4. Class Diagram
Dengan class, kita bisa menentukan.. mana variabel dan prosedur untuk kucing dan makanan.
Class ini nanti yang akan kita pakai untuk membuat objek.
Jadi…
Class adalah rancangan atau blue print dari sebuah objek.
Sedangkan objek adalah sebuah variable yang merupakan instance atau perwujudan dari kelas.
Class berisi definisi variable dan fungsi yang menggambarkan sebuah objek dalam OOP.
• Variable disebut atribut atau property
• Fungsi disebut method
Contoh class:
class NamaClass {
String atribut1;
String atribut2;
Kata kunci new berfungsi untuk membuat objek baru dari class tertentu.
Setelah membuat objek, kita bisa mengakses atribut dan method dari objek tersebut.
Contoh:
namaObj.namaMethod();
namaObj.atribut1;
// definisi atribut
String name;
int speed;
int healthPoin;
}
Berikutnya, buat class baru lagi bernama Game.java dan isi kodenya seperti ini:
package dasar;
// menjalankan method
petani.run();
if(petani.isDead()){
System.out.println("Game Over!");
}
}
}
Coba eksekusi Game.java dengan klik kanan pada Game.java lalu pilih Run File. Maka hasilnya:
Coba ganti nilai healthPoin menjadi 0.
petani.healthPoin = 0;
Setelah itu, coba eksekusi lagi:
Pertama-tama, kita membuat sebuah class dengan nama Player. Class ini mendefinisikan
objek Player dalam Game dengan atribut sebagai berikut:
Berikutnya kita membuat objek baru dari class Player pada class Game bernama petani.
// membuat objek player
Player petani = new Player();
Setelah itu mengisi atribut-atributny. Karena kalau tidak diisi akan bernilai Null dan
bisa menyebabkan NullPointerException.
Hasilnya, pesan Game Over! akan ditampilkan. Karena method isDead() akan
mengembalikan nilai true jika nilai hp kurang atau sama dengan nol.
class Drone {
// atribut
int energi;
int ketinggian;
int kecepatan;
String merek;
// method
void terbang(){
energi--;
if(energi > 10){
// terbang berarti nilai ketinggian bertambah
ketinggian++;
System.out.println("Dorne terbang...");
} else {
System.out.println("Energi lemah: Drone nggak bisa
terbang");
}
}
void matikanMesin(){
if(ketinggian > 0){
System.out.println("Mesin tidak bisa dimatikan karena
sedang terbang");
} else {
System.out.println("Mesin dimatikan...");
}
}
void turun(){
// ketinggian berkurang, karena turun
ketinggian--;
energi--;
System.out.println("Drone turun");
}
void belok(){
energi--;
System.out.println("Drone belok");
// belok ke mana? perlu dicek :)
}
void maju(){
energi--;
System.out.println("Drone maju ke depan");
kecepatan++;
}
void mundur(){
energi--;
System.out.println("Drone mundur");
kecepatan++;
}
}
Bagaimana Menentukan Atribut dan Method dari Objek?
Seperti yang sudah dijelaskan di awal. Objek memiliki data (atribut) dan operasi
(fungsi).
Kuncinya:
Contoh:
Apa ciri-ciri dari senjata atau data yang bisa dijadikan atribut?
• jumlah peluru
• jenis
• nama senjata
• berat
• warna
• dll
Lalu apa tingkah laku atau operasi (fungsi) yang bisa dilakukan?
• tembak()
• lempar()
• kurangiPeluru()
• reload()
• dll.
Maka class-nya bisa dibuat seperti ini:
class Senjata {
// atribut
String nama;
int jumlahPeluru;
// method
void tembak(){
//..
// setelah nembak, kurangi peluru
jumlahPeluru--;
}
void reload(){
//..
// kalau di-reload maka jumlah peluru diisi ulang
jumlahPeluru = 300;
}
}
Mudah bukan…
Baris pertama berisi nama class; Baris kedua berisi atribut; dan Baris ketiga berisi
method.
Class Diagram biasanya digunakan oleh software engineer untuk merancang software
dengan paradigma OOP.
Sebagai programmer, kita hanya perlu tahu cara membaca dan menuliskannya ke
dalam kode.
Jika kamu tertarik dengan class diagram, bisa membaca buku-buku tentang UML.