• Tidak ada hasil yang ditemukan

laporan-pbo-2

N/A
N/A
Protected

Academic year: 2021

Membagikan "laporan-pbo-2"

Copied!
16
0
0

Teks penuh

(1)

LAPORAN

PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK

Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berbasis Objek Yang

Dibimbing oleh Heru Wahyu Herwanto, S.T., M.KOM

Asisten Praktikum:

Ruth Ema Febrita

M.Arifin

Oleh:

AM ROUSAN SHAFIR

110533430663

PTI OFFERING E

(2)

UNIVERSITAS NEGERI MALANG

FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

S1 PENDIDIKAN TEKNIK INFORMATIKA

OKTOBER 2012

PENGENALAN 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

Class

Pengertian class adalah suatu pola, template atau cetak biru untuk objek sejenis atau

bias didefinisikan sebagai cetakkan dari objek. Contoh : Class Person,

Vehicle, Tree, dll

Bila diperhatikan script di atas, di buat sebuah kelas bernama Motor, dengan variable

bensin, dan kecepatan serta dengan metode jalan dan isi bensin.

Object

Object adalah instansiasi atau representasi nyata dari sebuah class. Contoh : Dari

class Buah kita dapat membuat object Mangga, Pisang, Apel dan lain-lain. Untuk

membuat object, kita menggunakan perintah new dengan sebuah nama class yang

akan dibuat sebagai instance dari class tersebut.

(3)

Date hari = new Date();

hari adalah object reference dari class Date yang akan digunakan untukmengakses class Date.Sedangkan operator new adalah operator yang akan menghasilkan harisebagai reference ke instance dari class Date()

Ketika anda memanggil operator new terjadi beberapa hal : 1. Instance baru yang telah diberikan oleh class dicipakan 2. Memori dialokasikan untuk instance tersebut

3. Special Method didefinisikan pada class (Konstruktor)

Attribut

merupakan nilai data yang terdapat pada suatu object di dalam class. Attribute

mempunyai karakterisitik yang membedakan object yang satu dengan object yang

lainya. Contoh : pada Class Buah terdapat attribute:warna, berat. Misalkan pada object

mangga: warna berisi kuning dan berat 0.5 kg dan pada object apel : warna merah dan

berat 0.6 kg

Dalam pendeklarasian atribut, dapat dituliskan:

mobilku.warna = “Hitam”;

*mobilku adalah objek baru

*warna adalah variable yang ada pada objek *hitam adalah isi dari variabel warna

Scoope Variable

Cakupan dari suatu variabel merupakan area dimana variabel termasuk (semestinya berada), hal tersebut ditentukan oleh area dimana variabel tersebut dideklarasikan. Dalam istilah sederhananya, setiap variabel ada (exists) di dalam blok dimana variabel dideklarasikan termasuk blok-blok yang dideklarasikan di dalam blok tersebut.

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.

Variable global adalah variable yang di inisial di bagian atas program yang bisa di

pakai oleh semua fungsi, prosedur, dan program utama.

Kelemahan dari variable global, antara lain :

Pemborosan memory jika semua variable di definisikan ke dalam variable main program,

Karena konsep lokal variable.

Jika sebuah fungsi yang memiliki local variable telah dijalankan memory yang terpakai

oleh local variable fungsi tersebut dapat terpakai oleh variable lain/fungsi lain.

Variabel local, Variabel yang hanya dikenal di daerah yang lokal saja, misalnya di

dalam sebuah fungsi/prosedur tertentu saja dan tidak dikenal di daerah lainnya. Harus

dideklarasikan di dalam blok yang bersangkutan Variabel lokal dibentuk ketika fungsi

dipanggil dan akan dihapus dari memori bila eksekusi terhadap fungsi selesai.Tidak ada

inisialisasi otomatis

Overloading Method

Method overloading adalah suatu cara untuk memberikan nama yang sama kepada dua method yang berbeda meski dua method tersebut berada dalam class yang sama. Hal ini dapat dilakukan dengan cara membedakan tipe parameter, jumlah parameter dan susunan parameter.

(4)

Kemampuan ini dimungkinkan dalam pemrograman Java, dan dikenal sebagai overloading method.

Input / Output

Berikut ini adalah langkah-langkah yang perlu dilakukan untuk mendapatkan input : Tambahkan di bagian paling atas code anda:

import java.io.*;

Tambahkan statemen berikut pada method main:

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

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:

Menambahkan

Import java.util.Scanner;

Membuat objek dari class Scanner

Scanner input = new Scanner(System.in);

Memasukan nilai dari masing-masing variabel dengan menggunakan object dari

System.out.print(“Masukkan nama : ”); String nama = nama input.nextLine(); System.out.prinln(nama);

(5)

C.

Latihan

Latihan 1.

Mahasiswa.java

public 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); }

}

Output program di atas adalah

TestMahasiswa.java

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(); } }

(6)

TestMahasiswa.java

public class TestMahasiswa {

public static void main(String[] args) { Mahasiswa MHS = new Mahasiswa(); Mahasiswa PTI = new Mahasiswa(); Mahasiswa PTE = new Mahasiswa();

System.out.println("IDENTITAS AWAL : "); MHS.cetak(); MHS.ubah("DITA",2010,"MADIUN"); PTI.ubah("BIMO PTI",2012,"MALANG"); PTE.ubah("SOPRET PTE",2011,"NGAWI"); System.out.println("IDENTITAS AKHIR :"); MHS.cetak(); PTI.cetak(); PTE.cetak(); } }

Output program di atas adalah

Latihan 2.

Lingkup.java

class Lingkup{ //Variabel instan

String sifat = "Marah"; //Metode

void infoLingkup(){ String sifat = "Malu";

System.out.println("Sifat pada metode: "+sifat); System.out.println("Sifat milik kelas: "+this.sifat); }

(7)

TestLingkup.java

public class TestLingkup{

public static void main(String[] args){ Lingkup varx = new Lingkup();

varx.infoLingkup(); }

}

Amati folder penyimpanan data, class yang terbentuk adalah :

Class yang dikompilasi adalah TestLingkup.java karena dalam script TestLingkup.java merupakan awal dari pendefinisian class TestLingkup.java dan terdapat metode main untuk menampilkan output program.

Output program di atas adalah

Fungsi dari kata kunci “this” adalah :

Variabel ini digunakan pada suatu objek untuk memanggil metode atau variabel

instansi pada objek yang sama. Artinya, this, merujuk pada "objek ini" yaitu objek di

mana metode sedang dijalankan.

Latihan 3.

Scoope.java

class Scoope { //Variabel instan int angka = 20; //Metode void 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); }

}

TestScoope.java

public class TestScoope{

public static void main(String[] args){ Scoope varx=new Scoope();

varx.infoScoope(); }

}

(8)

Class yang dikompilasi adalah TestScoope.java karena dalam script TestScoope.java merupakan awal dari pendefinisian class TestScoope.java dan terdapat metode main untuk menampilkan output program.

Output program di atas adalah

Mengapa angka yang terdapat pada method dan class dapat dibagi?

Karena pada variabel “angka” bersifat variabel global, sehingga pada method dapat diproses

Bagaimana cara menampilkan hasil bagi = 1.8 (isi variabel tetap)?

Menambah variabel yang telah dinisialisasi 1,1111 atau pada Script operasia TestScoope.java ditambah 0.8 dengan variabel baru.

Latihan 4.

Report.java

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 );

(9)

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

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

}

Output program di atas adalah

Latihan 5.

Persegi.java

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);

} }

(10)

C. Tugas Praktikum

Tugas Praktikum 1.

OverLoad.java

public class OverLoad {

static int tambah(int x, int y) { return x+y;

}

static double tambah(double x, double y) { return x+y;

}

static int tambah(int x, int y, int z) { return x+y+z;

}

public static void main(String[] args) { OverLoad angka = new OverLoad(); int a = angka.tambah(3, 4); int b = angka.tambah(3, 4); int c = angka.tambah(3, 4, 8p); double d = angka.tambah(3, 11.5); System.out.println("1. "+a); System.out.println("2. x<3> + y<4> = "+b); System.out.println("3. "+c); System.out.println("4. "+d); } }

Output program di atas adalah

Tugas Praktikum 2.

StatementIf.java

public class StatementIf {

public static void main(String[] args) { System.out.println("\n\n");

boolean b = true;

System.out.println("Nilai b = "+b);

System.out.println("Statement Awal dieksekusi"); if (b = false) b = true;

System.out.println("Nilai b = "+b);

System.out.println("Statement Akhir dieksekusi"); if (b=(2 <= 7)) b = true;

System.out.println("2 <= 7 mengembalikan nilai "+b); if (b=(3 > 9)) b = true;

(11)

if (b=(9 <= 9)) b = true;

System.out.println("9 <= 9 mengembalikan nilai "+b); }

}

Output program di atas adalah

Tugas Praktikum 3.

InputOutput.java

import java.util.Scanner; public class Tiga{

public static void main (String [] shadisk){ Scanner input=new Scanner(System.in);

System.out.println("====================================="); System.out.printf("Please Input your Name : ");

String nama = input.nextLine();

System.out.printf("Please input your Character : "); String character = input.nextLine();

System.out.println("==================================="); System.out.println("Hay Guys...My Name is "+nama);

System.out.println("I'm a very "+character+" person Guys...");

System.out.println("==================================="); }

}

(12)

D. Tugas Rumah

Tugas Rumah 1.

Segitiga Sama sisi

public class Bintang1{

public static void main (String shadisk[]) {

System.out.println(" --> Kombinasi Bintang Segitiga Samam Sisi"); int a,b,c; int x=5; for(a=0;a<=x;a++) { for(b=0;b<=a;b++) { System.out.print(" "); } for(c=0;c>=(a-x);c--) { System.out.print(" *"); } System.out.println(""); } } }

Output Program

(13)

Segitiga sama kaki

public class Bintang2 {

public static void main(String[] shadisk) {

System.out.println(" --> Hasil Kombinasi Bintang Segitiga sama kaki");

int a = 6;

for (int i=0; i<a; i++) {

for (int j=0; j<=i; j++) System.out.print("* "); System.out.println(); }

} }

Output program di atas adalah

Tugas Rumah 2.

Kombinasi.java

import java.io.*;

public class Kombinasi {

public static String shadisk() { String read = "";

InputStreamReader input = new InputStreamReader (System.in); BufferedReader buf = new BufferedReader (input);

(14)

try { read = buf.readLine(); } catch (IOException e ) { System.out.println("Eror!"); } return read; }

public static void main(String[] args) { String nama = "";

int kode;

System.out.println("---"); System.out.print("Masukkan Nama Anda : ");

nama=shadisk(); System.out.print("Masukkan ID Anda : "); kode=Integer.parseInt(shadisk()); System.out.println(""); System.out.println("---"); System.out.println("");

System.out.println("--> Kombinasi Nama dan ID anda : "+nama+""+kode);

} }

Output program di atas adalah

Tugas Rumah 3.

Absensi.java

import java.io.*;

public class Absen{ public static String shadisk(){

String read=" "; InputStreamReader input =new InputStreamReader(System.in); BufferedReader buf = new BufferedReader(input);

try {

read=buf.readLine();} catch (Exception e){

System.out.println("error");}

return read;} public static void main(String[] args) {

(15)

int menu; int a, jumlah;

System.out.println("---"); System.out.println(" ABSENSI SISWA "); System.out.println("---"); jumlah=0; System.out.println("1. Add student ");

System.out.println("2. Show data student "); System.out.println("3. Exit" ); System.out.println("---"); do { System.out.print(" Pilihan Anda : ");

menu=Integer.parseInt(shadisk()); if (menu==1)

{ System.out.print(" Input New Student : ");

nama = shadisk(); jumlah++; System.out.println("---");} else if (menu==2)

{

System.out.print("Data Student "+jumlah);} else if (menu==3)

{

break;} else {

System.out.println(" Wrong Input !!!");

System.out.println("---");} }while (menu!=3);

} }

Output program di atas adalah

E. Kesimpulan

Class merupakan wadah yang akan digunakan untuk menciptakan objek, maka

jelaslah bahwa kita harus membuat kelas terlebih dahulu sebelum membuat objek.

Object adalah

instansiasi atau representasi nyata dari sebuah class.

Variabel Scoope (cakupan variabel)

sampai mana variabel tersebut memiliki nilai

ketika dieksekusi ke dalam sebuah proses. Dengan kata lain, cakupan variabel

(16)

ini sangat bergantung pada tempat dimana ia dideklarasikan.

Lingkup variabel terbagi dua, yaitu lingkup Global dan Local.

Method overloading adalah

Overloading method adalah sebuah method yang

nama nya sama namun memiliki perlakuan yang berbeda

.

F. Daftar Pustaka

• http://www.scribd.com/doc/22011741/Object-Class-Method-Dalam-Java

http://java.lyracc.com/belajar/java-untuk-pemula/dan-superhttp://hendrosteven.wordpress.com/2008/01/16/scope-variabel/ • http://muhammadghazali.wordpress.com/tag/jenis-jenis-variabel-di-java/ • Modul Java Jeni

• Kadir,Abdul.2003.Dasar Pemrograman Java 2:Yogyakarta.ANDI Yogyakarta • Hermawan Beni.2009.Pemrograman Berbasis Objek Java SE

Referensi

Dokumen terkait

Berdasarkan hasil penelitian disimpulkan bahwa jumlah koloni bakteri fase inflamasi luka bakar grade II pada mencit sebelum dilakukan perawatan dengan menggunakan

Siswa menjawab soal-soal Kuis Uji Teori untuk mereview konsep-konsep penting tentang berpidato yang telah dipelajari Siswa merefleksikan nilai-nilai serta kecakapan hidup

Penelitian yang sama dari Afiah, Maidin dan Bahar (2013) tentang budaya dan efektivitas rumah sakit di RSUD Haji Makasar dan RSU Labuang Baji Makasar, untuk budaya organisasi di

Di antara kelompok-kelompok yang datang ke situ sekitar tahun 1920-an adalah kelompok dari Pattiro, Bone, yang datang membuka kebun di Parit Arcung, di mana kawasan tersebut

27 tahun 1999 tentang Analisis Mengenai Dampak Lingkungan disebutkan bahwa AMDAL merupakan kajian mengenai dampak besar dan penting untuk pengambilan

Selain ditemukan motif yang melatarbelakangi perempuan menikah di Surabaya dalam membaca rubrik ‘Anda &amp; Anak’ pada tabloid Nova, terdapat beberapa temuan dari penelitian

Sedangkan nilai terendah terdapat pada butir pernyataan H3 dengan nilai indeks sebesar 60,00%, dengan pilihan terbanyak pada poin Setuju (4) sebesar 58,67% Sehingga jika

Untuk menjawab rumusan masalah ini peneliti memiliki beberapa tujuan penelitian, di antaranya: (1) Untuk mengetahui tingkat kesahihan (valid) dan kehandalan