1. LAPORAN II
PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK
Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berorientasi Objek
Yang Dibimbing oleh Bapak Azhar Ahmad Smaragdina, M.Pd
Asisten Praktikum :
Tantri Hari Mukti
Endah Puji Rohmawati
Oleh :
Asnita Meydelia C. K.
130533608143
S1 PTI 2013 offering E
UNIVERSITAS NEGERI MALANG
FAKULTAS TEKNIK
JURUSAN TEKNIK ELEKTRO
S1 PENDIDIKAN TEKNIK INFORMATIKA
September, 2014
2. LAPORAN KE-2
” Pengenalan Dasar Pemrograman Java II”
A. TUJUAN
1. Mahasiswa mampu membuat class sendiri.
2. Mahasiswa mampu mendeklarasikan atribut dan method pada class.
3. Mahasiswa mampu menerapkan overloaded method.
B. DASAR TEORI
a. Class
Class adalah wadah yang berisi abstraksi (pemodelan) dari suatu fungsi objek (benda), yang mendeskripsikan data (sifat karakteristik) dan fungsi yang dimiliki oleh objek tersebut. Karena kelas merupakan wadah yang akan digunakan untuk menciptakan objek, maka jelaslah bahwa kita harus membuat kelas terlebih dahulu sebelum membuat objek.
Dalam pendefinisian class, umumnya dituliskan sebagai berikut:
<modifier> class <name> {
<attributeDeclaration>*
<constructorDeclaration>*
<methodDeclaration>*
}
b. Object
Object adalah sekumpulan software yang terdiri dari variable dan method-method terkait. Object saling berinteraksi dengan saling memanggil metode dari satu object ke object lainnya, disebut message. Dengan kata lain, object merupakan instance sebenarnya dari sebuah class. Instance dibuat sewaktu kita melakukan inisialisasi class dengan menggunakan kata kunci new.
Dalam bahasa pemrograman Java, object dapat ditulis dengan sintaks sebagai berikut:
nama_class nama_instance = new nama_class();
c. Attribute
Dalam pendeklarasian atribut, dapat dituliskan:
<modifier> <type> <name> [=default_value];
3. d. Scope variable
Variabel Scoope (cakupan variabel) menentukan seberapa luas variabel dapat
diakses. Ruang lingkup atau scoope suatu variabel merupakan penempatan lokasi dimana variabel tersebut dideklarasikan dan dapat berlaku. Lingkup variabel terbagi dua, yaitu lingkup Global dan Local.
e. Overloading Method
Dalam class yang kita buat, kadangkala kita menginginkan untuk membuat method dengan nama yang sama namun mempunyai fungsi yang berbeda menurut
parameter yang digunakan. Kemampuan ini dimungkinkan dalam pemrograman Java, dan dikenal sebagai overloading method.
f. Input/Output
Berikut ini adalah langkah-langkah yang perlu dilakukan untuk mendapatkan input:
1. Tambahkan di bagian paling atas code anda:
import java.io.*;
2. Tambahkan statemen berikut pada method main:
BufferedReader dataIn = new BufferedReader (new
InputStreamReader(System.in));
3. Deklarasikan variabel String temporary dan gunakan fungsi readLine() untuk mendapatkan input serta ketikkan pada blog try-catch.
try {
String temp = dataIn.readLine();
} catch ( IOException e ){
System.out.println(“Terjadi kesalahan saat anda melakukan input ”)
}
Berikut ini adalah langkah-langkah yang perlu dilakukan untuk mendapatkan input dari console dengan Scanner:
1) Menambahkan
import java.until.Scanner;
2) Membuat objek dari class Scanner
Scanner input = new Scanner (System.in);
3) Memasukan nilai dari masing-masing variabel dengan menggunakan object dari Scanner
System.out.println (“Masukan nama : ”);
String nama = input.nextline();
System.out.println(nama);
4. C. LATIHAN
1. Latihan 1
Nama Program : Mahasiswa &TestMahasiswa
Script Program :
Mahasiswa
TestMahasiswa
5. Output Program :
Mahasiswa
TestMahasiswa
Deskripsi Program :
Program ini memiliki 2 class, yaitu class Mahasiswa dan class TestMahasiswa. Class Mahasiswa berisi pendeklarasian Identitas Awal. Sedangkan pada class TestMahasiswa berfungsi untuk mengubah pendeklarasian Identitas Awal yang sudah di deklarasikan pada class Mahasiswa. Namun pada class Mahasiswa tidak terdapat method main, sehingga saat di eksekusi ia tidak terdapat eror namun hasil tidak dapat ditampilkan. Identitas awal akan ditampilkan pada class TestMahasiswa. Pada class TestMahasiswa itu sendiri terdapat 3 objek, MHS untuk perubahan pertama, MahasiswaPTI untuk perubahan kedua, dan MahasiswaPTE untuk perubahan ketiga. Semua data mulai dari Identitas Awal sampai 3 data yang telah dirubah akan ditampilkan pada class TestMahasiswa ini.
6. 2. Latihan 2
Nama Program : Lingkup & TestLingkup
Script Program :
Lingkup
TestLingkup
Output Program :
Lingkup
TestLingkup
Deskripsi Program :
Program ini memiliki 2 kelas, yaitu class Lingkup dan class TestLingkup. Class Lingkup tidak terdapat method main sehingga saat di eksekusi ia tidak terdapat eror namun ia tidak dapat menampilkan program hasil eksekusi. Namun program akan ditampilkan pada class TestLingkup. Pada class Lingkup terdapat variable instan (String sifat = “Marah”), dan metode infoLingkup(). Pada metode ini terdapat pendeklarasian sifat=malu. Untuk menampilkan sifat yang ada pada method itu sendiri menggunakan +sifat, sedangkan untuk menampilkan sifat yang ada di luar method tersebut (pada variable instan) menggunakan kata kunci this, syntax yang digunakan adalah +this.sifat
7. 3. Latihan 3
Nama Program : Scoope & TestScoope
Script Program :
Scoope
TestScoope
Output Program :
Scoope
TestScoope
8. Deskripsi Program :
Program ini merupakan contoh program Scoope. Program ini memiliki 2 kelas, yaitu class Scoope dan class TestScoope. Class Scoope tidak terdapat method main sehingga saat di eksekusi ia tidak terdapat eror namun ia tidak dapat menampilkan program hasil eksekusi. Namun program akan ditampilkan pada class TestScoope. Pendeklarasian hanya terdapat pada class Scoope. Pada class Scoope juga memiliki varible instan yang akan ditampilkan pada method nya dengan kata kunci this. Pada class TestScoope terdapat kata kunci new yang berfungsi untuk membuat objek baru dengan memanggil variable yang ada pada class Scoope.
4. Latihan 4
Nama Program : Report
Script Program :
9. Output Program :
Deskripsi Program :
Program ini merupakan contoh program Input/Output. Untuk menggunakan stream pada program input output seringkali menggunakan pernyataan import.java.io.* hal ini disebabkan karena kebanyakan kelas yang berhubungan dengan stream berada pada paket java.io. Pogram ini memiliki kelas Report. Pada program ini terdapat 2 method, yaitu method String bacaInputan dan method main. Pada method String bacaInputan terdapat pernyataan InputStreamReader yang merupakan turunan dari kelas InputStream. Karena menggunakan istilah Stream, maka program ini harus ditangani dengan menggunakan penanganan eksepsi. Program ini juga menggunakan System.in yang menyatakan stream standart yang telah disediakan Java. Pada method ini terdapat pernyataan try . . . catch yang berfungsi untuk membaca data dan meletakkannya ke buffer. Program ini akan berjalan dengan mula-mula user menginputkan Nama, kemudian nilai matematika, fisika dan kimia. Setelah itu program akan menampilkan hasil sesuai dengan inputan yang di masukkan user tersebut.
10. 5. Latihan 5
Nama Program : Persegi
Script Program :
Output Program :
Deskripsi Program :
Program ini merupakan contoh program Input/Output. Untuk menggunakan stream pada program input output seringkali menggunakan pernyataan import.java.io.* hal ini disebabkan karena kebanyakan kelas yang berhubungan dengan stream berada pada paket java.io. Pogram ini memiliki kelas Persegi. Pada program ini terdapat method main. Pada method ini menggunakan fungsi Stream dalam pembacaan data. Karena menggunakan istilah Stream, maka program ini harus ditangani dengan menggunakan penanganan eksepsi. Program ini juga menggunakan System.in yang menyatakan stream standart yang telah disediakan Java. Pada method ini terdapat pernyataan try . . . catch yang berfungsi untuk membaca data dan meletakkannya ke buffer. Program akan berjalan dengan mula-mula user menginputkan nilai sisi nya. Program akan menghitung Luasnya dengan menggunakan syntax hitungLuas = angka*angka kemudian program akan menampilkan hasil.
11. D. TUGAS PRAKTIKUM
1. Tugas Praktikum 1
Nama Program : Overloading
Script Program :
Output Program :
Deskripsi Program :
Program ini merupakan contoh program Overloading. Fungsi program Overloading itu sendiri adalah untuk penggunaan beberapa method yang bernama sama namun memiliki fungsi berbeda. Program ini sendiri memiliki class Overloading dan method main. Pada method main terdapat pendeklarasian variabel dengan tipe data int (bilangan bulat) dan double (bilangan riil). Program ini menggunakan 3 method yang bernama sama yaitu tambah dengan parameter yang berbeda.
12. Syntax yang digunakan adalah
public static int tambah (int a,int b) {
return a+b;
} //method ke 1
public static double tambah (double a, double b) {
return a+b;
} //method ke 2
public static int tambah (int a, int b, int c) {
return a+b+c;
} //method ke 3
Pemanggilan method berdasarkan kebutuhan misalnya untuk menambahkan a bernilai 3 dan b bernilai 4, maka akan memanggil method ke 1 karena sesuai dengan parameternya
System.out.println("1. "+tambah (a,b));
2. Tugas Praktikum 2
Nama Program : Demo Kelas Boolean
Script Program :
Output Program :
13. Deskripsi Program :
Program ini merupakan demo Kelas Boolean dengan menggunakan kelas demoBooelan. Program ini memiliki method main. Dalam method main akan di deklarasikan variable b dengan tipe data boolean. Boolean kata kunci digunakan untuk menyatakan suatu bidang yang dapat menyimpan suatu nilai boolean, yaitu, baik true atau false. Kata kunci ini juga digunakan untuk menyatakan bahwa metode yang mengembalikan nilai tipe Boolean. Kemudian memberikan nilai pada variable b yaitu true, kemudian mengecek varibel b. Setelah itu memberikan nilai b = false, kemudian di cek kembali. Apabila b bernilai (!b) akan Statemen tersebut akan dieksekusi. Apabila variable b bernilai (b) statemen itu tidak akan dieksekusi.
3. Tugas Praktikum 3
Nama Program : Konsep I/O
Script Program :
14. Output Program :
Deskripsi Program :
Program ini merupakan contoh program Input/Output. Untuk menggunakan stream pada program input output seringkali menggunakan pernyataan import.java.io.* hal ini disebabkan karena kebanyakan kelas yang berhubungan dengan stream berada pada paket java.io. Pogram ini memiliki kelas InputOutput. Pada program ini terdapat 2 method, yaitu method String bacaInputan dan method main. Pada method String bacaInputan terdapat pernyataan InputStreamReader yang merupakan turunan dari kelas InputStream. Karena menggunakan istilah Stream, maka program ini harus ditangani dengan menggunakan penanganan eksepsi. Program ini juga menggunakan System.in yang menyatakan stream standart yang telah disediakan Java. Pada method ini terdapat pernyataan try . . . catch yang berfungsi untuk membaca data dan meletakkannya ke buffer. Program ini akan berjalan dengan mula-mula user menginputkan Nama, kemudian sifat yang dimiliki. Setelah itu program akan menampilkan gabungan nama dan sifat nya tersebut pada sebuah statemen.
15. E. TUGAS RUMAH
1. Tugas Rumah 1
Nama Program : SegitigaSisi & SegitigaSiku
Script Program :
SegitigaSisi
17. Deskripsi Program :
Program ini terdiri dari 2 kelas, yaitu class SegitigaSisi dan class SegitigaSiku. Pada class SegitigaSisi akan menampilkan bentuk segitiga Sama Sisi. Sedangkan pada class SegitigaSiku akan menampilkan bentuk Segitiga Siku-siku. Kedua kelas ini sama-sama menggunakan konsep I/O. Bedanya, ada class SegitigaSisi menggunakan Streamreader sedangkan pada class SegitigaSiku menggunakan Scanner. Kelebihan menggunakan Scanner adalah jika terdapat penghitungan matematika program tersebut tidak akan melakukan konversi terlebih dahulu. Berbeda dengan menggunakan StreamReader, ia akan baca terlebih dahulu lalu di konversi. Kedua program ini juga sama-sama menggunakan perulangan untuk menampilan segitiga.
Perulangan pada SegitigaSisi
for (x=s; x>0; x--){
for (y=x-1; y>0; y--){
System.out.print(" ");}
for (z=x; z<s+1; z++){
System.out.print("* ");}
System.out.println(
Perulangan pada SegitigaSiku
for (x=1; x<n; x++)
{
for (s=1; s<=s1; s=s+1)
{
System.out.print(" ");
}
s1=s1-1;
int y;
for (y=1;y<=x; y++)
{
System.out.print("*");
j=j+1;
}
18. 2. Tugas Rumah 2
Nama Program : Kombinasi
Script Program :
Kombinasi
PanggilKombinasi
Output Program :
19. Deskripsi Program :
Program ini memiliki 2 kelas, yaitu class Kombinasi dan class PanggilKombinasi. Class Kombinasi tidak terdapat method main sehingga saat di eksekusi ia tidak terdapat eror namun ia tidak dapat menampilkan program hasil eksekusi. Namun program akan ditampilkan pada class PanggilKombinasi. Pendeklarasian hasil terdapat pada class Kombinasi dengan menggunakan konsep I/O. Sedangkan pada class PanggilKombinasi digunakan untuk menginput nama dan angka untuk melakukan perulangan nama yang diinputkan. Setelah class PanggilKombinasi dijalankan, user diminta untuk menginput nama dan angka. Kemudian Nama dan angka tersebut akan disimpan dan diproses ke dalam class Kombinasi. Hasilnya program akan menampilkan Nama tersebut dengan jumlah yang sesuai dengan angka yang diinputkan user.
20. 3. Tugas Rumah 3
Nama Program : Absensi
Script Program :
Absensi
22. Output Program :
Deskripsi Program :
Program ini merupakan Program Absensi. Program ini memiliki 2 kelas yaitu, class Absensi dan class TestAbsensi. Pada class Absensi menggunakan Konsep I/O. Sedangkan pada class TestAbsensi menggunakan fungsi SwitchCase. Pada program ini menggunakan fungsi pengkondisian dan perulangan. Untuk fungsi perulangan dapat dilihat dengan adanya penggunaan for. Sementara if dan else, switch digunakan untuk menyatakan adanya pengkondisian pada program. Pada pengkondisian dengan menggunakan if, tidak jelas apa yang akan dilakukan apabila ekpresi boolean bernilai false. Apabila ingin memproses suatu ekpresi boolean yang bernilai false, dapat menambah else. Switch digunakan untuk
23. memilih berdasar banyak pilihan, dimana masing-masing pilihan akan menghasilkan pernyataan atau aksi yang berlainan sesuai pilihan yang dilakukan. Biasanya penggunaan switch berkaitan dengan menu, di mana apabila menu pertama dipilih, maka switch akan menjalankan blok dari case 1, lalu apabila menu kedua dipilih, maka switch akan menjalankan blok dari case 2, demikian seterusnya. Bila tidak memenuhi kriteria menu case manapun, switch akan menjalankan blok default.
24. F. KESIMPULAN
Class adalah wadah yang berisi abstraksi (pemodelan) dari suatu fungsi objek (benda), yang mendeskripsikan data (sifat karakteristik) dan fungsi yang dimiliki oleh objek tersebut.
Object adalah sekumpulan software yang terdiri dari variable dan method-method terkait.
Overloading Methods adalah method dengan nama yang sama namun mempunyai fungsi yang berbeda menurut parameter yang digunakan.
Pada program ini terdapat kata kunci Boolean yang digunakan untuk menyatakan suatu bidang yang dapat menyimpan suatu nilai boolean, yaitu, baik true atau false.
Try digunakan untuk mendefinisikan pernyataan yang memungkinkan timbulnya exception.
Catch digunakan untuk menangani exception ketika muncul.
Bufferedreader yang digunakan untuk menangkap inputan dari keyboard.
New digunakan pembuatan objek baru.
Return digunakan untuk menyelesaikan pelaksanaan metode. Hal ini dapat diikuti oleh suatu nilai yang diperlukan oleh definisi metode yang dikembalikan ke pemanggil.
Break digunakan untuk keluar dari case tertentu.
G. DAFTAR PUSTAKA
1. Kadir, Abdul. 2003. Dasar Pemograman Java 2. Yogyakarta: Penerbit Andi.
2. Prasetyo, Didik Dwi. 2007. 150 Rahasia Pemrograman. Bojonegoro : PT. Elex Media Komputindo.
3. Tim Asisten Praktikum. 2014. Modul Praktikum Pemrograman Berorientasi Obyek 2. Malang : Universitas Negeri Malang.