A. TUJUAN PEMBELAJARAN. 1. Menerapkan konsep enkapsulasi pada class 2. Mendeklarasikan suatu constructor

dokumen-dokumen yang mirip
Deklarasi atribut dapat dilakukan dengan sintaks sebagai berikut:

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

PRAKTIKUM 3 KONSTRUKTOR DAN OVERLOADING

Praktikum 7. Dasar-dasar OOP di Java

Praktikum 6 Class Design (Encapsulation)

Dasar-Dasar OOP di Java

Dasar-Dasar OOP di Java

A. TUJUAN PEMBELAJARAN 1. Memahami konsep package dan import 2. Menggunakan kata kunci this

INTERAKSI ANTAR OBJECT

Polymorphism. Oleh : Agus Priyanto, M.Kom

Bab 8. Dasar-Dasar OOP

PRAKTIKUM 2 PEMROGRAMAN BERORIENTASI OBJEK

Politeknik Elektronika Negeri Surabaya

MODUL AJAR Program Pendidikan Jarak Jauh D3 Teknik Komputer dan Jaringan

PRAKTIKUM 2 PEMROGRAMAN BERORIENTASI OBJEK

Pengenalan Lingkungan Kerja Java

public class B extends A {... }

PRAKTIKUM 5 PAKET, IMPORT DAN INTERFACE

Percobaan 5 Paket dan Import, Interface

subclass class manapun private default protected public package yang sama

B. DASAR TEORI MENGENAL OBJEK & CLASS

B. DASAR TEORI MENGENAL OBJEK & CLASS

Employee employee=new Manager();

Pemrograman Berbasis Objek. Enkapsulasi. Yuliana Setiowati. Politeknik Elektronika Negeri Surabaya

Praktikum. PBO (Kelas K) Oleh : MOHAMMAD SHOLIKIN

UML (Unified Modelling Language)

Enkapsulasi. Politeknik Elektronika Negeri Surabaya. Enkapsulasi. public void Info() { System.out.println( Saya siswa PENS );

Pertemuan 2 (2) : Membuat Class dan mengakses Anggota Class

Pemrograman Berorientasi. Class dan Obyek 2

Class & Object 2. Imam Fahrur Rozi

Enkapsulasi. Praktikum 7

Encapsulation (Encapsulasi) Minggu 5 Pemrograman Berorientasi Objek Alfa Faridh Suni

KARAKTERISTIK PEMROGRAMAN BERORIENTASI OBJEK (OOP) Pemrograman berorientasi Objek mempunyai karakterisitik sebagai berikut:

Class & Object 2 ~Praktikum~ Imam Fahrur Rozi

Pengenalan pemrograman berorientasi obyek

CLASS PUTU INDAH CIPTAYANI JURUSAN SISTEM INFORMASI STMIK AMIKOM JOGJAKARTA

PEMROGRAMAN BERORIENTASI OBJEK

MODUL PRAKTIKUM BERORIENTASI OBJEK NINF615 SEMESTER GASAL 2016/2017 PROGRAM STUDI S1 TEKNIK INFORMATIKA

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN JAVA 2

Overriding. Subclass yang berusaha memodifikasi tingkah laku yang diwarisi dari superclass. Tujuan: subclass memiliki tingkah laku yang lebih

Praktikum KPLBO Interaksi Objek II

A. TUJUAN PEMBELAJARAN 1. Memahami tentang overloading 2. Memahami tentang overriding 3. Memahami aturan tentang overridden

ENKAPSULASI. 1. Kompetensi Setelah kegiatan perkuliahan selesai, mahasiswa diharapkan dapat:

Pemrograman Berbasis Objek. Politeknik Elektronika Negeri Surabaya

ABSTRACTION, ENCAPSULATION, INHERITANCE & POLYMORPHISM

PRAKTIKUM III & IV PEMROGRAMAN BERORIENTASI OBJEK

PERTEMUAN III OBJEK DAN CLASS TUJUAN PRAKTIKUM

Ismail Wibi Wicaksono

Membuat dan Menggunakan Class

Inheritance dan Kata Kunci static

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LAB SHEET PEMROGRAMAN 2

UNIVERSITAS GUNADARMA

1. Mana diantara pilihan-pilihan berikut ini yang merupakan penulisan loop yang benar?

LAPORAN RESMI INHERITANCE

ENKAPSULASI Data Hiding

Modul Praktikum Bahasa Pemrograman 1

BAB 1 PEMROGRAMAN BERORIENTASI OBJEK

Praktikum 3 Konsep Class, Attribute dan Method

OVERLOADING, CONSTRUCTOR DAN DESTRUCTOR. Dewi Sartika, M.Kom

Bahasa Pemrograman 2.

Sekarang, kita akan mencoba untuk menganalisa program Java pertama : public class Hello {

Bahasa Pemrograman II Modul 1 : Pemrograman Berbasis Objek

PEWARISAN D E W I S A R T I K A, M. K O M

Java Fundamentals. Herman Tolle. Program Teknologi Informasi & Ilmu Komputer UNIVERSITAS BRAWIJAYA

IF PEMROGRAMAN LANJUT PERULANGAN. Oleh : Andri Heryandi, M.T.

Pemrograman Lanjut Jurusan S1 Teknik Informatika. 9/17/2012 Ratno

Bahasa Pemrograman 2.

KONSTRUKTOR PEMROGRAMAN LANJUT. Dr. Eng. Herman Tolle, ST., MT. Sistem Informasi FILKOM UB Semester Genap 2016/2017

MODUL 3 PEWARISAN TUJUAN DASAR TEORI

OBJECT ORIENTED PROGRAMMING (OOP)

BAB 6 INHERITANCE Tujuan:

Praktikum Enkapsulasi

Dasar Pemrograman Java

LAPORAN PRAKTIKUM ALGORITMA DAN STRUKTUR DATA FAKULTAS ILMU KOMPUTER UNIVERSITAS BRAWIJAYA

Pemrograman Berorientasi. Methods

SUMBER BELAJAR PENUNJANG PLPG

Modul Praktikum 3 Pemograman Berorientasi Objek

BAB 12 ENKAPSULASI, INHERITANCE DAN POLIMORPISME

Gambar 1. Langkah-langkah pengurutan metode Insertion Sort (1)

LAPORAN RESMI PRAKTIKUM BAHASA PEMROGRAMAN

Pemrograman Berorientasi Objek (PBO) By : Jeffry Montolalu, ST PERTEMUAN XII KELAS DAN OBYEK

PERTEMUAN 3 OBJEK DAN CLASS

Praktikum KPLBO Class dan Object I

IKG2I4 / Software Project I

Pengenalan pemrograman berorientasi obyek. Politeknik Elektronika Negeri Surabaya. Topik

Pertemuan 11 Object Oriented Program

Percabangan & Perulangan

E-Book PEMROGRAMAN BERORIENTASI OBJEK. Disusun Oleh: Arfian Hidayat, S.Kom

PEWARISAN. Disusun Oleh: Reza Budiawan. Untuk: Tim Dosen Algoritma & Pemrograman Lanjut

Other OOP Basic. Viska Mutiawani, M.Sc

Java Fundamentals. Herman Tolle. Program Teknologi Informasi & Ilmu Komputer UNIVERSITAS BRAWIJAYA

BAB VII. CLASS DAN OBJECT

LAPORAN RESMI PRAKTIKUM PEMROGRAMAN BERBASIS OBJEK (PBO) MODUL 4 PENGKAPSULAN

PEMROGRAMAN JAVA. Yoannita, S.Kom. Input Kondisi (IF-ELSE, SWITCH)

Other OOP Basic. Viska Mutiawani, M.Sc. 1 Viska Mutiawani - Informatika FMIPA Unsyiah

MODUL PRAKTIKUM STRUKTUR DATA DAN ALGORITMA STACK

Pemrograman Berorientasi. Inheritance

Jobsheet 09. Overloading and Overriding Method

Pemograman Berorientasi Objek. Week 4 Initialization dan Instance dalam Kelas

Anonymous Inner Class

Transkripsi:

PRAKTIKUM 8 ENKAPSULASI A. TUJUAN PEMBELAJARAN 1. Menerapkan konsep enkapsulasi pada class 2. Mendeklarasikan suatu constructor B. DASAR TEORI Kita dapat menyembunyikan information dari suatu class sehingga anggotaanggota class tersebut tidak dapat diakses dari luar. Adapun caranya adalah cukup dengan memberikan akses kontrol private ketika mendeklarasikan suatu atribut atau method. Contoh: Encapsulation (Enkapsulasi) adalah suatu cara untuk menyembunyikan implementasi detail dari suatu class. Enkapsulasi mempunyai dua hal mendasar, yaitu : 1. information hiding 2. menyediakan suatu perantara (method) untuk pengaksesan data Contoh: public class Siswa { public void setnrp(int n) { nrp=n; Contructor (konstruktor) adalah suatu method yang pertama kali dijalankan pada 63

saat pembuatan suatu obyek. Konstruktor mempunyai ciri yaitu : 1. mempunyai nama yang sama dengan nama class 2. tidak mempunyai return type (seperti void, int, double dll) Contoh: public class Siswa { private String nama; public Siswa(int n, String m) { nrp=n; nama=m; Suatu class dapat mempunyai lebih dari 1 konstruktor dengan syarat daftar parameternya tidak boleh ada yang sama. Contoh : public class Siswa { private String nama; public Siswa(String m) { nrp=0; nama= ; public Siswa(int n, String m) { nrp=n; nama=m; C. TUGAS PENDAHULUAN 1. Apakah yang dimaksud dengan enkapsulasi? 2. Apakah yang dimaksud dengan constructor? 2. Apakah yang dimaksud dengan overloading constructor? 64

D. PERCOBAAN Percobaan 1 : Melakukan enkapsulasi pada suatu class Implementasikan UML class diagram Mahasiswa sebelum dan setelah dilakukan enkapsulasi! Jika enkapsulasi dilakukan pada class diagram diatas, maka akan berubah menjadi: Percobaan 2 : Melakukan overloading constructor Dari class diagram tersebut, dapat diimplementasikan ke dalam program sebagai berikut: public class Mahasiswa { 65

private String nama; public Mahasiswa() { nrp=0; nama= ; public Mahasiswa(String nama) { nrp=0; this.nama=nama; public Mahasiswa(int nrp, String nama) { this.nrp=nrp; this.nama=nama; E. LATIHAN Latihan 1: Mengimplementasikan UML class diagram dalam program untuk class Kalender Dari class diagram diatas, desainlah suatu class yang memenuhi konsep enkapsulasi. Untuk nilai inisialisasi, dipakai 1-1-2000. Pakailah kata kunci this untuk mempersingkat pengkodean. Tulislah listing program berikut ini sebagai pengetesan. 66

public class TesKalender { public static String gettime(kalender kal) { String tmp; tmp = kal.gettanggal() + "-" + kal.getbulan() + "-" + kal.gettahun(); return tmp; public static void main(string args[]) { Kalender kal = new Kalender(8); System.out.println("Waktu awal : " + gettime(kal)); kal.settanggal(9); System.out.println("1 hari setelah waktu awal : "+gettime(kal)); kal = new Kalender(6, 2003); System.out.println("Waktu berubah : " + gettime(kal)); kal.setbulan(7); System.out.println("1 bulan setelah itu : " + gettime(kal)); kal = new Kalender(20, 10, 2004); System.out.println("Waktu berubah : " + gettime(kal)); kal.settahun(2005); System.out.println("1 tahun setelah itu : " + gettime(kal)); Lakukan kompilasi pada program diatas dan jalankan. Jika tampilan di layar tampak seperti dibawah ini, maka program anda sudah benar. Jika tidak sama, benahi kembali program anda. Waktu awal : 8-1-2000 1 hari setelah waktu awal : 9-1-2000 Waktu berubah : 1-6-2003 1 bulan setelah itu : 1-7-2003 Waktu berubah : 20-10-2004 1 tahun setelah itu : 20-10-2005 67

Latihan 2 : Mengimplementasikan UML class diagram dalam program untuk class Truk Keterangan : 1 kilogram = 9,8 newtons Transformasikan class diagram diatas ke dalam bentuk program! Tulislah listing program berikut ini sebagai pengetesan. public class TesTugas2{ public static void main(string args[]){ boolean status; Truk truk = new Truk(900); System.out.println("Muatan maksimal = "+truk.getmuatanmaks()); status = truk.tambahmuatan(500.0); System.out.println("Tambah muatan : 500"); if (status) System.out.println("Ok"); else System.out.println("Gagal"); status = truk.tambahmuatan(300.0); System.out.println("Tambah muatan : 300"); if (status) System.out.println("Ok"); 68

else System.out.println("Gagal"); status = truk.tambahmuatan(150.0); System.out.println("Tambah muatan : 150"); if (status) System.out.println("Ok"); else System.out.println("Gagal"); status = truk.tambahmuatan(50.0); System.out.println("Tambah muatan : 50"); if (status) System.out.println("Ok"); else System.out.println("Gagal"); System.out.println("Muatan sekarang = " + truk.getmuatan()); Lakukan kompilasi pada program diatas dan jalankan. Jika tampilan di layar tampak seperti dibawah ini, maka program anda sudah benar. Jika tidak sama, benahi kembali program anda dan lakukan hal yang sama seperti diatas. Muatan maksimal : 900.0 Tambah muatan : 500 ok Tambah muatan : 300 ok Tambah muatan : 150 gagal Tambah muatan : 50 ok Muatan sekarang = 849.9999999999999 F. TUGAS Tugas 1. Menerapkan konsep enkapsulasi pada kelas Tabungan yang terdapat di Tugas 1. Bab 7. Pengenalan Pemrograman Berbasis Obyek. 69

Kembangkan kelas Tabungan diatas sehingga memungkinkan pengguna untuk memilih satuan mata uang yang berbeda (USD, AUD, IDR) ketika mengambil atau menyimpan uang. Saldo tabungan disimpan dalam satuan IDR oleh sistem. Beri nama kelas anda dengan nama MultiTabungan.java. Diasumsikan bahwa: 1 AUD = 10.000 IDR 1 USD = 9.000 IDR Buat kelas baru untuk mengetes kelas MultiTabungan yang anda buat! G. LAPORAN RESMI Kumpulkan hasil latihan dan tugas di atas. Tambahkan analisa dalam laporan resmi. 70