Oleh:
UNIVERSITAS UDAYANA
2018
BAB I
LANDASAN TEORI
1.1 Class
Class merupakan suatu blueprint atau cetakan untuk menciptakan
suatu instant dari object. Class juga merupakan grup suatu object dengan
kemiripan attributes/properties, behaviour dan relasi ke object lain. Contoh
sintaknya:
Class body;
1.2 Method
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat
dikerjakan oleh suatu object. Method didefinisikan pada class akan tetapi
dipanggil melalui object. Metode menentukan perilaku objek, yakni apa
yang terjadi ketika objek itu dibuat serta berbagai operasi yang dapat
dilakukan objek sepanjang hidupnya. Ada 4 (Empat) bagian dasar yang
dimiliki metode antara lain Nama metode, Tipe Objek atau tipe primitive
yang dikembalikan metode, Daftar parameter, dan Badan atau isi metode.
Tiga bagian pertama mengindikasikan informasi penting tentang
metode itu sendiri. Dengan kata lain, nama metode tersebut=metode lain
dalam program. Dalam java kita dapat memiliki metode-metode berbeda
yang memiliki nama sama tetapi berbeda tipe kembalian atau daftar
argumennya, sehingga bagian-bagian definisi metode ini menjadi penting.
Ini disebut overloading metode(proses yang berlebihan pada suatu metode).
Untuk menjalankan program yang memiliki sifat polymorphism
tersebut, diperlukan suatu kemampuan overloading, yaitu suatu kemampuan
untuk menentukan fungsi yang mana yang harus digunakan atau dijalankan
jika terdapat nama fungsi yang sama. Polimorfisme bisa diartikan seperti
kemampuan suatu variable untuk mengubah perangai sesuai dengan objek
hasil instansiasi yang digunakan. Polimorfisme membiarkan lebih dari 1
objek dari sub class sub class dan diperlakukan sebagai objek dari super
class tunggal.
Contoh:
Mahasiswa cowok = new anakSI();
cowok.methodKU( Bernaz );
cewek.mothodKU( Amelia );
1.3 Constructor
Construktor adalah Constructor merupakan suatu method yang akan
memberikan nilai awal pada saat suatu objek dibuat. Pada saat program
dijalankan, constructor akan bekerja dengan constructor, hal mendasar yang
perlu diperhatikan, yaitu :
1.4 Modifier
Modifier adalah kata, frasa, atau klausa yang berfungsi sebagai
adjective atau adverb yang menerangkan kata atau kelompok kata lain.
Sebagai adjective dan adverb ketika berfungsi sebagai adjective (dapat
berupa simple adjective, adjective phrase, clause participle, infinitive),
modifier menerangkan noun, sedangkan ketika berfungsi sebagai adverb
(dapat berupa simple adverb, adverb phrase, clause, preposition phrase,
infinitive), kata ini menerangkan verb, adjective atau adverb lain.
1.5 Object
Object adalah instance dari class. Jika class secara umum
merepresentasikan (template) sebuah object, sebuah instance adalah
representasi nyata dari class itu sendiri. Contoh : Dari class Fruit kita dapat
membuat object Mangga, Pisang, Apel dan lainlain.Untuk membuat object,
3
kita menggunakan perintah new dengan sebuah nama class yang akan dibuat
sebagai instance dari class tersebut.
Dengan hari adalah object reference dari class Date yang akan
digunakan untuk mengakses class Date. Sedangkan operator new adalah
operator yang akan menghasilkan hari sebagai reference ke instance dari
class Date().
4
BAB II
PERMASALAHAN
2.1 Latihan 3
Truk
- muatan : double
- muatanmaks : double
+ Truk(beratmaks : double)
+ getMuatan() : double
+ getMuatanMaks() : double
+ tambahMuatan(berat : double)
Lalu tulislah listing program berikut ini sebagai pengetesan, lalu
jalankan dan perlihatkan hasilnya.
2.2 Tugas 2
5
Truk
- muatan : double
- muatanmaks : double
+ Truk(beratmaks : double)
+ getMuatan() : double
+ getMuatanMaks() : double
+ tambahMuatan(berat : double)
Keterangan : 1 kilogram = 9,8 newtons
6
Jumlah kemenangan dari pemain dan lawan serta jumlah seri dalam permainan
akan diakumulasikan dan ditampilkan pada akhir permainan. Pemenangnya
adalah pemain yang memiliki total kemenangan terbanyak.
7
BAB III
PEMBAHASAN
3.1 Latihan 3
8
Berikut ini tampilan listing program yang berguna sebagai
pengetesan, beserta hasilnya saat dijalankan.
9
Pada program ini, pertama-tama melakukan inisialisasi nilai variabel
muatan dan muatanmax menjadi 0. Kemudian melakukan pembuatan objek
baru bernama “truk” dari class Truk dengan angka 1000 sebagai nilai
variabel muatanmax, dan mencetaknya dengan bantuan method
getMuatanMaks. Selanjutnya pada saat melakukan penambahan muatan
sebanyak 500, program memanggil method tambahMuatan yang terdapat
dalam object truk disertai parameter nilai muatan yang ingin ditambah, yaitu
500. Dalam method tersebut, dilakukan pengecekan terlebih dahulu apakah
muatan saat ini ditambah muatan yang akan dimasukkan akan lebih besar
daripada muatan maksimal. Jika ya, program akan mencetak pesan
kesalahan dan muatan tidak jadi ditambah. Namun jika tidak, muatan saat
ini akan ditambahkan nilai tadi. Begitu pula saat melakukan penambahan
muatan lainnya.
Pada akhirnya progam akan menampilkan total muatan saat ini
setelah dilakukan operasi-operasi penambahan sebelumnya dengan
10
memanggil method getMuatan. Program akan dianggap benar apabila nilai
muatan akhir lebih kecil atau sama dengan nilai muatan maksimal, dalam
hal ini bernilai 1000.
3.2 Tugas 2
11
Berikut ini tampilan listing program yang berguna sebagai
pengetesan, beserta hasilnya saat dijalankan.
12
Pada program ini, pertama-tama melakukan inisialisasi nilai variabel
muatan dan muatanmax menjadi 0. Kemudian melakukan pembuatan objek
baru bernama “truk” dari class Truk2 dengan angka 900 sebagai nilai
variabel muatanmax, dan mencetaknya dengan bantuan method
getMuatanMaks. Selanjutnya pada saat melakukan penambahan muatan
sebanyak 500, program memanggil method tambahMuatan yang terdapat
dalam object truk disertai parameter nilai muatan yang ingin ditambah, yaitu
500. Perbedaan dengan soal sebelumnya adalah bahwa method ini berjenis
boolean, bukan String seperti sebelumnya, karena hasilnya akan digunakan
dalam percabangan status. Dalam method tersebut, dilakukan pengecekan
terlebih dahulu apakah muatan saat ini ditambah muatan yang akan
dimasukkan akan lebih besar daripada muatan maksimal (yang telah
dikonversi ke Newton). Jika ya, program akan melakukan return false.
Namun jika tidak, muatan saat ini akan ditambahkan nilai tadi dan
melakukan return true. Kemudian diikuti dengan pengecekan status, untuk
memilih bilamana akan mencetak “ok” jika muatan berhasil ditambahkan
atau mencetak “gagal” jika muatan tidak jadi ditambahkan. Begitu pula saat
melakukan penambahan muatan lainnya.
13
Pada akhirnya progam akan menampilkan total muatan saat ini
setelah dilakukan operasi-operasi penambahan sebelumnya dengan
memanggil method getMuatan yang digunakan sebagai parameter method
konversi Newton ke kilogram. Program akan dianggap benar apabila nilai
muatan akhir lebih kecil atau sama dengan nilai muatan maksimal, dalam
hal ini bernilai 900.
import java.util.Random;
import java.util.Scanner;
14
{
Scanner input = new Scanner (System.in);
Dadu dadu = new Dadu();
char pil;
int dadu1 = 0, dadu2 = 0;
System.out.print("Masukan jumlah putaran permainan : ");
int putaran = Integer.parseInt(input.nextLine());
dadu.garis();
for(int m=0; m<putaran; m++){
System.out.println("Putaran ke-" + (m+1));
System.out.println("Giliran pemain 1");
System.out.print("Lempar dadu sekarang? (Y/N) : ");
pil = input.nextLine().charAt(0);
15
{
if(gamePemain > gameLawan)
System.out.println("Pemain 1 menang!");
if(gamePemain < gameLawan)
System.out.println("Pemain 2 menang!");
if(gamePemain == gameLawan)
System.out.println("Draw!");
else
System.out.println("");
}
}
16
Contoh kasus permainan 2 putaran dengan hasil pemain 2 menang
17
kemenangan pemain 1), setLawan (untuk melakukan increment jumlah
kemenangan pemain 2), setSeri (untuk melakukan increment jumlah seri).
Jumlah kemenangan pemain 1 ditampung pada variabel getPemain, jumlah
kemenangan pemain 2 ditampung pada variabel getLawan, sedangkan
jumlah seri ditampung pada variabel getSeri. Kemudian putaran permainan
akan bertambah secara otomatis, kemudian proses di atas pun diulang
kembali sampai putaran terakhir.
18
Contoh kasus permainan 3 putaran dengan hasil pemain 1 menang secara
aklamasi.
19
BAB IV
PENUTUP
1.1 Kesimpulan
1.2 Saran
20