• Tidak ada hasil yang ditemukan

LAPORAN 4 ENKAPSULASI PBO PEMROGRAMAN

N/A
N/A
Protected

Academic year: 2017

Membagikan "LAPORAN 4 ENKAPSULASI PBO PEMROGRAMAN"

Copied!
18
0
0

Teks penuh

(1)

LAPORAN IV

PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK

Disusun untuk Memenuhi Matakuliah Praktikum Pemrograman Berorientasi Objek Yang Dibimbing oleh Bapak Heru Wahyu Herwanto, S.T., M.Kom

Asisten Praktikum : Roby Wahyudi

Jevri T.A

Oleh :

Ananda Putri Syaviri

130533608243 S1 PTI 2013 offering B

UNIVERSITAS NEGERI MALANG FAKULTAS TEKNIK

JURUSAN TEKNIK ELEKTRO

(2)

LAPORAN KE-4 ”ENCAPSULATION”

A. TUJUAN

Mahasiswa mampu memahamai dan menggunakan konsep Encapsulation dalam pemrograman java.

B. DASAR TEORI

a. Encapsulation(Enkapsulasi)

Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class. Dua hal yang mendasar dalam enkapsulasi, yakni :

b. Information Hiding

Adalah proses yang menyembunyikan informasi dari suatu class sehingga class tersebut tidak dapat diakses dari luar. Yaitu dengan memberikan akses kontrol “private” ketika mendeklarasikan atribut atau method.

c. Interface to Acces data

Adalah cara melalukan perubahan terhadap atribut yang di information hiding yaitu dengan membuat suatu interface berupa method untuk menginisialisasi atau merubah nilai dari suatu atribut tersebut.

d. Mutator dan Accessor method

Accessor Methods digunakan untuk membaca nilai variabel pada class, baik berupa instance maupun static.

Mutator Methods di gunakan untuk mengubah atau memberi nilai variable pada class, baik berupa instance maupun static.

C. LATIHAN

(3)

Screenshoot syntax :

(4)

Keterangan : Dalam kelas Bus : - terdapat method cetak

- terdapat deklarasi variable penumpang dan maxPenumpang bertipe integer.

Dalam kelas UjiBus :

- terdapat menu utama yang didalamnya terdapat :

Deklarasi pembuatan objek baru yaitu busMini dengan memasukkan nilai jumlah penumpang dan penumpang maksimal serta pemanggilan method cetak yang ada pada kelas Bus. Penambahan penumpang pada busMini serta pemanggilan method cetak pada kelas Bus. Pengurangan penumpang apabila penumpang yang naik melebihi batas yang telah dideklarasikan pada objek busMini. Penambahan jumlah penumpang (total penumpang yang naik) serta pemanggilan method cetak pada kelas Bus.

 Analisis perbandingan jumlah penumpang Bus terakhir dengan jumlah penumpang maksimum. Mengapa bisa demikian?

Program diatas pada dasarnya hanya mencetak nilai variable (sebagai angka penumpang) yang telah dideklarasikan , tidak berfungsi untuk menghitung atau menenetukan batas maximal penumpang yang akan naik. Alur prosesnya hanya menambahkan penumpang , sudah ada angka batas maksimum tetapi tidak berfungsi untuk pembatasan dalam artian penumpang tidak boleh naik apabila penumpang dalam bus sudah melampaui batas max yang telah dideklarasikan, sehingga tidak dapat membatasi penumpang yang akan naik bus, hanya sebagai pendeklarasian bahwa bus tersebut batas maksimum penumpang adalah 15.

(5)
(6)

Screenshoot Jawaban :

Keterangan :

Dalam kelas Bus 2 : - terdapat method cetak

- method getPenumpang untuk mengambil nilai

- method mutathor dengan kata kunci "add" untuk menambahkan penumpang. - terdapat konstruktor kelas Bus

- terdapat pendeklarasian variabel bertipe int ( penumpang, maxPenumpang) yang bersifat private.

(7)

- terdapat fungsi utama yang didalamnya pendeklarasian pembuatan objek baru untuk menambahkan kuota

penumpang dalam bus "busBesar".

terdapat fungsi penambahan penumpang untuk menambahkan 15, 5, 26 penumpang serta pemanggilan method cetak pada kelas Bus2.

Penjelasan dari UjiBus 2 :

Membuat objek baru dengan nama busBesar dengan kuota 40, cetak nilai awal, dengan kondisi penumpang sekarang = 0 dan maxPenumpang = 40. Kemudian dengan fungsi penambahan penumpang bernilai 15, maka + 15, jadi 0+15=15, sehingga penumpang menjadi = 15 dan maxPenumpang tetap karena masih dibawah batas nilai yaitu 40. Kemudian penambahan penumpang sebanyak 5, maka +5 sehingga 15+5=20, penumpang sekarang = 20 dan maxPenumpang tetap. Fungsi terkahir penambahan penumpang sebanyak 26, maka + 26, menghasilkan 20+26 = 46 (20 adalah jumlah penumpang terakhir setelah dilakukan penambahan pada fungsi kedua sebanyak 5 penumpang). Jumlah yang dihasilkan melebihi maxPenumpang yang ditentukan yaitu 40, maka program mencetak “Penumpang melebihi kuota” yang sebelumnya dideklarasikan pada

kelas Bus2, dan akan mencetak nilai yang terakhir sebelum 26 ditambahkan yaitu penumpang sekarang = 20 dan maxPenumpangnya tetap.

Analisis perbedaan latihan 1 dan latihan 2:

Perbedaannya : terletak pada eksekusi maks penumpang.

Jika pada latihan 1 hanya mendeklarasikan tanpa melakukan pembatasan, pada latihan 2 terdapat pengkondisian jika jumlah penumpang ( total penumpang dalam bus) melebihi batas maxPenumpang maka akan muncul pemberitahuan “Penumpang melebihi kuota”,

Latihan 3 :

(8)

import java.io.*;

System.out.println("Enter Password");

(9)

temp= this.penumpang+penumpang;

if(temp>=maxPenumpang){

System.out.println("Penumpang melebihi kouta");

}

else{

this.penumpang=temp;

}

} }

(10)

Keterangan : Dalam kelas Bus3 :

- Terdapat import java.io.* yang berfungsi sebagai fungsi inputan sehingga nanti saat program dieksekusi berfungsi untuk menginputkan data secara manual melalui keyboard.

- Terdapat pendeklarasian variable bertipe int ( penumpang, maxPenumpang, penumpangbaru, password).

- Terdapat method bacainputan bertipe string. - Terdapat kostruktor kelas Bus3.

- Method cetak, getPenumpang dengan pengaplikasian password, addPenumpang(menambahkan penumpang).

(11)

- Terdapat fungsi utama yang didalamnya terdapat :

* pendeklarasian pembuatan objek baru bernama busBesar dengan kuota penumpang 40 yang dideklarasikan dalam kurung “(40)”.

* pendeklarasian fungsi addPenumpang, getPenumpang dengan nilai kuota yang berbeda ( menambah dan mengubah nilai)

busBesar.addPenumpang(15); busBesar.getPenumpang(123); busBesar.cetak();

busBesar.addPenumpang(5); busBesar.getPenumpang(123); busBesar.cetak();

busBesar.addPenumpang(26); busBesar.getPenumpang(123); busBesar.cetak();

busBesar.addPenumpang(26); busBesar.getPenumpang(444); busBesar.cetak();

D. TUGAS PRAKTIKUM

Tugas 1 :

(12)
(13)

public class UjiBus4 {

public static void main(String[]args){

//membuat objek busBesar dari class Bus

Bus4 busBesar = new Bus4(40);

busBesar.getPenumpang(15);

busBesar.getPenumpang(5);

busBesar.getPenumpang(26);

busBesar.getAverage();

}

}

(14)

Keterangan : Dalam kelas Bus4 :

- Terdapat pendeklarasian variable bertipe int ( penumpang, maxPenumpang, penumpangbaru)

double(counter).

- Terdapat konstruktor Bus4

- Terdapat method mutator addPenumpang (menambah) dan getPenumpang (mengambil nilai) dengan adanya pengkondisian jika kondisi salah atau benar. - Terdapat method getAverage untuk menghitung rata- rata jumlah penumpang yang ditambahkan.

- Terdapat method cetak Dalam kelas UjiBus4:

- Terdapat fungsi utama yang didalamnya terdapat pendeklarasian pembuatan objek baru “busBesar” dan pemanggilan fungsi getPenumpang dengan nilai kuota yang berbeda (15,5,26) dan getAverage yang ada pada kelas Bus4.

E. TUGAS RUMAH 1) Program Tabung

(15)

Tabung.java

//method untuk menampilkan Diameter

public void showDiameter()

//method untuk menampilkan LuasPermukaan

public void showLuasPermukaan()

{

double LuasPermukaan = 2 * Math.PI *

this.jarijari * (this.jarijari + this.tinggi);

System.out.println("Luas Permukaan Tabung= "+ LuasPermukaan);

}

//method untuk menampilkan Volume

(16)
(17)

- Terdapat pendeklarasian variable bertipe double dengan private (jarijari, tinggi).

- Terdapat method setJarijari ( mengubah nilai).

- Terdapat method showDiameter (menampilkan diameter).

- Terdapat method showLuasPermukaan (menampilakn luas permukaan). - Method showVolume( menampilkan volume).

- Method cetak. Dalam kelas UjiTabung :

- Terdapat fungsi utama yang didalamnya terdapat pendeklarasian pembuatan objek baru “TabungKecil”.

- Fungsi untuk mengatur jajrijari dan tinggi .

- Pemanggilan fungsi untuk menampilkan diameter, luas permukaan, volume pada pengapplikasian TabungKecil.

- Pendeklarasian pembuatan objek baru “TabungBesar”.

- Pemanggilan fungsi untuk menampilkan diameter, luas permukaan, volume pada pengapplikasian TabungBesar.

1. Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail dari suatu class 2. Methode Accecor untuk membaca nilai yang diberikan sedangkan Methode Mutator untuk

mengatur nilai yang diberikan

3. Metodhe Accecor dan Mutator digunakan apabila variabel yang ada di class induk bersifat private, jadi untuk mengakses variabel yang private itu digunakanlah methode accecor dan methode mutator

(18)

5. Kalau kita ingin mengatur inputan user dengan konsep enkapsulasi, kita bisa meminta bantuan scanner untuk memasukkan data.

6. Apabila kita telah mengatur, misalnya panjang, maka panjang akan muncul sesuai dengan apa yang telah kita atur, namun apabila kita mengatur kembali panjang tersebut maka yang akan muncul adalah pengaturan yang terbaru, begitu seterusnya sampai pengaturan itu selesai.

G. DAFTAR PUSTAKA

Referensi

Dokumen terkait