LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah...

23
LAPORAN II PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T., M.KOM Asisten Praktikum: Muh. Zaenul Hilmi Ridhotul Ulfa Oleh: Renitha Erdiana 110533430681 S1 PTI 2011 offering B

Transcript of LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah...

Page 1: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

LAPORAN IIPRAKTIKUM PEMROGRAMAN BERBASIS OBJEK

Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T., M.KOM

Asisten Praktikum:

Muh. Zaenul HilmiRidhotul Ulfa

Oleh:

Renitha Erdiana

110533430681

S1 PTI 2011 offering B

UNIVERSITAS NEGERI MALANG

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

S1 PENDIDIKAN TEKNIK INFORMATIKA

SEPTEMBER 2012

Page 2: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

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>*

}<modifier> adalah sebuah modifier bertipe access yang dapat dikombinasikan dengan

modifier lainnya.

Petunjuk penulisan class:

Gunakan nama yang sesuai untuk penamaan class. Disarankan untuk tidak

menggunakan XYZ sebagai nama class atau nama asal-asalan lainnya.

Nama class harus diawali dengan huruf KAPITAL.

Penamaan file harus tepat sama dengan nama yang digunakan oleh class ber-modifier

public

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.

Page 3: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

Dalam bahasa pemrograman Java, object dapat ditulis dengan sintaks sebagai

berikut:

nama_class nama_instance = new nama_class();

c. Attribute

Attribute merupakan nilai data yang terdapat pada suatu object yang berasal dari

class. Attribute mempresentasikan karakteristik dari suatu object.

Dalam pendeklarasian atribut, dapat dituliskan:

<modifier> <type> <name> [= <default_value>];

d. Scoope 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 Methods

Dalam class yang dibuat, kadangkala 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 diperlukan 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){

System.out.println(“Terjadi kesalahan saat anda melakukan input”)

}

Page 4: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

Berikut ini adalah langkah-langkah yang perly dilakukan untuk mendapatkan input

dan console dengan Scanner :

1. MenambahkanImport java.util.Scanner;

2. Membuat objek dari class Scanner Scanner input = new Scanner(System.in);

3. Memasukkan nilai dari masing-masing variabel dengan menggunakan object dari

ScannerSystem.out.print(“Masukkan nama : “);String nama = input.nextLine();System.out.println(nama);

C. Latihan

Latihan 1

a. Tulis class berikut kemudian simpan dengan nama Mahasiswa.javapublic class Mahasiswa{ public String nama; public int angkatan; public String asal;public Mahasiswa(){ nama = "Ani"; angkatan = 2010; asal = "Magelang";}public void ubah(String nm, int ak, String as){ nama = nm; angkatan = ak; asal = as;}public void cetak(){ System.out.println("Nama : "+nama); System.out.println("Angkatan : "+angkatan); System.out.println("Asal : "+asal); } }

b. Kompilasi dan jalankan program tersebut.c. Output dari langkah (b) adalah :

Page 5: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

d. Tulis Program berikut, simpan dengan nama TestMahasiswa.java pada folder yang sama dengan class Mahasiswa di atas.public class testMahasiswa{ public static void main(String[] args){ Mahasiswa MHS = new Mahasiswa(); System.out.println("IDENTITAS AWAL : "); MHS.cetak(); MHS.ubah("DITA",2010,"Madiun"); System.out.println("IDENTITAS AKHIR : "); MHS.cetak(); }}

e. Compilasi dan jalankan!f. Output program di atas adalah :

g. Buatkan dua object lagi dengan nama MahasiswaPTI dan Mahasiswa PTEh. Ubah data kedua object tersebuti. Panggil fungsi cetak untuk kedua object tersebutj. Program test yang telah direvisi adalah :

public class TestMahasiswa{ public static void main(String[] args){ Mahasiswa mahasiswaPTI = new Mahasiswa(); mahasiswaPTI.ubah("Renitha",2011,"Trenggalek"); Mahasiswa mahasiswaPTE = new Mahasiswa(); mahasiswaPTE.ubah("Mina",2011,"Tulungagung"); System.out.println(""); System.out.println("Mahasiswa PTI :"); mahasiswaPTI.cetak(); System.out.println(""); System.out.println("Mahasiswa PTE :"); mahasiswaPTE.cetak(); } }

Page 6: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

k. Keluaran program adalah :

Latihan 2a. Tulis dan simpan program berikut :

class Lingkup{ //Variabel instan String sifat = "Marah"; //Metodevoid infoLingkup(){ String sifat = "Malu"; System.out.println("Sifat pada metode: "+sifat); System.out.println("Sifat milik kelas: "+this.sifat); }}

b. Tulis dan simpan program berikut :public class TestLingkup{ public static void main(String[] args){ Lingkup varx = new Lingkup(); varx.infoLingkup(); }}

c. Compilasi TestLingkup.java

d. Amati folder penyimpanan data, class yang terbentuk adalah :

Page 7: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

e. Jalankan program tersebut, maka output program adalah sbb :

f. Fungsi dari kata kunci this adalah Digunakan dalam sebuah class untuk menyatakan objek sekarang, untuk

menghindari variabel yang sama antara variabel class dan variabel property.

Latihan 3

a. Tulis dan simpan program berikut.

class Scoope{ //Variabel instan int angka = 20; //Metodevoid infoScoope(){ int angka1 = 12; System.out.println("angka di method : "+angka1); System.out.println("angka di kelas : "+this.angka); int modulus = angka % angka1; System.out.println("sisa hasil : "+modulus); float bagi = angka / angka1; System.out.println("hasil bagi : "+bagi); }}

b. Tulis dan simpan program berikut.

public class TestScoope{ public static void main(String[] args){ Scoope varx=new Scoope(); varx.infoScoope(); }}

c. Compilasi Scoope.java

d. Amati folder penyimpanan data, class yang terbentuk adalah :

Page 8: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

e. Jalankan Program tersebut, maka output program adalah sbb :

f. Mengapa angka yang terdapat pada method dan class dapat dibagi!Bagaimana cara

menampilkan hasil bagi = 1.8 (isi variabel tetap)?

Karena nama yang dimiliki yang berbeda, pada class nama yang dimiliki adalah

angka, pada method nama yang dimiliki adalah angka1. Sehingga keduanya dapat

dipanggil dan dieksekusi.

Latihan 4

a. Tulis dan simpan program berikut :

import java.io.*;

public class Report{public static String bacaInputan(){ String baca=""; InputStreamReader input = new InputStreamReader (System.in); BufferedReader buf = new BufferedReader (input); try{

baca = buf.readLine(); }catch( IOException e){

System.out.println("Error!"); } return baca;}

public static void main(String[] args){ //Digunakan untuk menangkap exception. String name ="";

int nilaiMatematika;int nilaiFisika;int nilaiKimia;System.out.print("Masukkan nama : ");name=bacaInputan();System.out.print("Masukkan nilai matematika : ");nilaiMatematika=Integer.parseInt(bacaInputan());System.out.print("Masukkan nilai Fisika : ");nilaiFisika=Integer.parseInt(bacaInputan());System.out.print("Masukkan nilai Kimia : ");nilaiKimia=Integer.parseInt(bacaInputan());

System.out.println("\n----------------------------------------------------");System.out.println("" + name );

Page 9: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

System.out.println("Nilai kamu adalah ");System.out.println("Matematika : " + nilaiMatematika);System.out.println("Fisika : " + nilaiFisika);

System.out.println("Kimia : " + nilaiKimia); }}

b. Output program di atas adalah :

Latihan 5

a. Tulis dan simpan program berikut :

import java.io.*;

public class Persegi{public static void main(String[] args){

BufferedReader data = new BufferedReader(new InputStreamReader(System.in));

String x = " ";int hitungLuas=0;System.out.println("---Luas Persegi---");System.out.print("Masukkan nilai sisi : ");

try{x = data.readLine();int angka = Integer.parseInt(x);hitungLuas = angka * angka;

}catch (Exception e) {System.out.println("Error");

}System.out.println("Luas persegi dengan sisi " + x + "

adalah " + hitungLuas);}}

Page 10: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

b. Ouput program di atas adalah :

D. Tugas Praktikum

1. Buatlah program Oveloading dengan pottongan program di bawah ini:

public class Overloading{

static int tambah (int a,int b){return a+b;

}static double tambah (double a,double b){

return a+b;}static int tambah (int a,int b,int c){

return a+b+c;}}

public class TestOverloading{ public static void main(String[] args){int angka1;int angka2;double angka3;

angka1 = Overloading.tambah(3,4);angka2 = Overloading.tambah(3,4,8);angka3 = Overloading.tambah(10,4.5);

System.out.println("");System.out.print("1. ");System.out.println(angka1);System.out.print("2. a<3> + b<4> = ") ;System.out.println(angka1);System.out.print("3. ");System.out.println(angka2);System.out.print("4. ");System.out.println(angka3);}}

Page 11: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

Output :

2. Buat demo kelas Boolean dengan menggunakan Statemen IF sehingga keluarannya

sebagai berikut :

class DemoBoolean {public static void main(String[] args) {boolean b;b = true;System.out.println("-----------------------------------");System.out.println("Nilai b = " + b); if (b) {System.out.println("Statemen awal dieksekusi");}b = false;System.out.println("-----------------------------------");System.out.println("Nilai b = " + b);

if (b) {System.out.println("Statemen tengah tidak akan dieksekusi");}if (!b) {System.out.println("Statemen akhir dieksekusi");}System.out.println("-----------------------------------");System.out.println("2 <= 7 mengembalikan nilai " +(2 <= 7));System.out.println("3 > 9 mengembalikan nilai " + (3 > 9));System.out.println("9 <= 9 mengembalikan nilai "+ (9 <= 9));}}

Output :

Page 12: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

3. Buat sebuah program yang menggunakan konsep input/output sehingga dapat

menghasilkan output sebagai berikut :

import java.io.*;

public class Karakter{public static String bacaInputan(){String baca="";InputStreamReader input = new InputStreamReader (System.in);BufferedReader buf = new BufferedReader (input);try{

baca = buf.readLine();}catch( IOException e){

System.out.println("Error!");}return baca;}public static void main(String[] args){//Digunakan untuk menangkap exception.String name ="";String character ="";System.out.println("");System.out.print("Please Input Your Name : ");name=bacaInputan();System.out.print("Please Input Your Character : ");character=bacaInputan();

System.out.println("");System.out.println("Hello...My Name is " + name );System.out.println("I'm a very " + character +" person.");

}}

Output :

Page 13: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

E. Tugas Rumah

1. Segitiga Sama sisi

public class SegitigaSamaSisi{public static void main (String args []){int jumSisi = 7;int i, j;System.out.print ("Membuat segitiga sama sisi, sisi = 6 \n");

for (i=1; i<=jumSisi; i++){

for(j=1; j<=i; j++){

System.out.print (" ");}for(j=1; j<=jumSisi-i; j++){

System.out.print (" *");}System.out.println("");

}}}

Output:

Page 14: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

b. Segitiga Sama Kaki

public class SegitigaSamaKaki{

public static void main (String args []){

int jumSisi = 6;

int i, j;

System.out.println ("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±");

System.out.println ("±±±±± PROGRAM by RENITHA ERDIANA ±±±±");

System.out.println ("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n");

System.out.print ("Membuat segitiga siku-siku dengan sama kaki");

System.out.println (", alas = 6, tinggi = 6");

for (i=1; i<=jumSisi; i++)

{

for(j=1; j<=i; j++)

System.out.print ("*");

System.out.print ("\n");

}

}

}

Output :

Page 15: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

2. Buatlah sebuah program dimana terdapat inputan yang kemudian di operasikan

dengan yang lain, sehingga memunculkan sebuah nilai baru.

Example:

Inputan : 1. Angka 2. String

Output : kombinasi keduanya, sejumlah inputan

import java.io.*;

public class Kombinasi{ public static String bacaInputan(){ String baca=""; InputStreamReader input = new InputStreamReader (System.in); BufferedReader buf = new BufferedReader (input); try{ baca=buf.readLine(); }catch( IOException e ){ System.out.println("Error!"); } return baca; }

public static void main(String[] args) { String jumlah=""; String nama=""; System.out.println ("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±"); System.out.println ("±±±± PROGRAM by RENITHA ERDIANA ±±±±"); System.out.println ("±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±\n"); System.out.print("\nMasukkan Nama Anda : "); nama=bacaInputan(); System.out.print("\nMasukkan Jumlah Output : "); jumlah=bacaInputan(); int jml = Integer.parseInt(jumlah);

System.out.print("\n\n::::: Output :::::\n\n"); for(int i=0;i<jml;i++){ System.out.println((i+1)+". "+nama); } System.out.print("\n----- SELESAI -----\n\n"); }

Page 16: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

}

3. Buatlah sebuah program absensi dimana terdapat menu :

1. Menambah siswa

2. Melihat jumlah siswa yang masuk

3. Keluar (exit)

import java.util.*;import java.io.*;class Absensi{ public static void main(String[] args){ int i, jmlh=0, jmlhsiswa=0; int na=0; na = jmlhsiswa-jmlh; String[] data; data=new String[30]; String[] data1; data1=new String[50]; int[] data2; data2=new int[50]; int pilihan=0; BufferedReader reader = null; InputStreamReader streamReader = null; Scanner input=new Scanner(System.in); BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in));

streamReader = new InputStreamReader(System.in); reader = new BufferedReader(streamReader); try{ do{ System.out.println ("\n--- Menu: ---"); System.out.println (""); System.out.println ("1. Menambah siswa"); System.out.println ("2. Melihat jumlah siswa yang masuk"); System.out.println ("3. Keluar (exit)"); System.out.println ("");

Page 17: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

System.out.print ("Masukkan Pilihan Anda : "); pilihan = Integer.parseInt(reader.readLine()); switch(pilihan){ case 1: System.out.println (""); System.out.println ("--> Input Data Siswa <--\n"); System.out.print("Masukkan jumlah siswa : "); jmlhsiswa=input.nextInt(); System.out.print("Masukkan jumlah siswa yang tidak masuk : "); jmlh=input.nextInt(); System.out.println (""); System.out.println("--> Yang tidak masuk dalam kelas <--\n"); for (i=1;i<=jmlh;i++) { System.out.print(""); System.out.print(" Nama Siswa : "); data[i]=dataIn.readLine(); System.out.print(" keterangan tidak masuk : "); data1[i]=dataIn.readLine(); System.out.print(" berapa hari siswa tidak masuk : "); data2[i]=input.nextInt(); System.out.println(""); } break; case 2: System.out.print(""); System.out.println("--> Tampilan data siswa <--"); na = jmlhsiswa-jmlh; System.out.println(" jumlah siswa yang masuk adalah : "+na); System.out.println(""); System.out.println("=== Data siswa yang tidak masuk ==="); System.out.print(""); for (i=1;i<=jmlh;i++) { System.out.println("Data Ke - "+i+""); System.out.print(""); System.out.println(" Nama Siswa :

"+data[i]); System.out.println(" keterangan siswa tidak masuk :

"+data1[i]); System.out.println(" siswa tidak masuk selama : "+data2[i]

+" hari"); } System.out.print("\n"); break; case 3: System.exit(1); break; default: System.out.println("Pilihan yang Anda Masukan Salah");

break; } }while(true); }catch(IOException e) {e.printStackTrace(); } }}

Output:

Page 18: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

KESIMPULAN

Di dalam program Java, terdapat Class, Object, Attribute, Variabel Scoope dan

Overloading method. Class berisi abstraksi (pemodelan) dari suatu fungsi objek (benda),

yang mendeskripsikan data (sifat karakteristik) dan fungsi yang dimiliki oleh objek tersebut.

Sedangkan Object terdiri dari variable dan method-method terkait. Attribute terdiri dari nilai

data yang terdapat pada suatu object yang berasal dari class. Variabel Scoope (cakupan

variabel) menentukan seberapa luas variabel dapat diakses, lingkup variabel terbagi dua,

Page 19: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

yaitu lingkup Global dan Local. Serta overloading method untuk membuat method dengan

nama yang sama namun mempunyai fungsi yang berbeda menurut parameter yang

digunakan.

DAFTAR PUSTAKA

Fajarindra. 2012. Pengertian dari Class, Object, dan Method pada Java, (Online), (http://fajarindra.web.id/pengertian-dari-class-object-dan-method-pada-java), diakses 4 Oktober 2012.

Modul Praktikum II Pemrograman Berbasis Object

Page 20: LAPORAN KE - renithaerdiana.files.wordpress.com  · Web viewDisusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang Dibimbing oleh Heru Wahyu Herwanto, S.T.,

Materi PPT Pemrograman Berbasis Object : JENI_Slides-Intro1-Bab10-Membuat_class_sendiri