“INCAPSULATION (ENKAPSULASI)”
Disusun Oleh:
IMANDA MEYFI PERDANI
140533600939
S1 PTI OFF A ‘14
I. TUJUAN
1. Mahasiswa mampu memahami dan menggunakan konsep Encapsulation
dalam pemrograman java
2. Mahasiswa mampu memahami dan menggunakan method Mutator dan
Accessor
3. Mahasiswa mampu menggunakan IDE NetBeans
b. Method Mutator
Jika kita menghendaki object lain untuk mengubah data, yang dapat
kita
lakukan adalah membuat method yang dapat memberi atau
mengubah nilai variable dalam class, baik itu berupa instance
maupun static. Method semacam ini disebut dengan mutator
methods. Sebuah mutator method umumnya tertulis set<
namaInstanceVariabel>
Perhatikan salah satu dari implementasi mutator method :
C. IDE NetBeans
Netbeans adalah sebuah aplikasi Integrated Development
Environment (IDE) yang berbasiskan Java dari Sun Microsystems yang
berjalan di atas swing. Swing merupakan sebuah teknologi Java untuk
pengembangan aplikasi dekstop yang dapat berjalan pada berbagai
macam platform seperti windows, linux, Mac OS X dan Solaris. Sebuah
IDE merupakan lingkup pemrograman yang di integrasikan ke dalam
suatu aplikasi perangkat lunak yang menyediakan Graphic User Interface
(GUI), suatu kode editor atau text, suatu compiler dan suatu debugger.
Netbeans juga dapat digunakan progammer untuk menulis, meng-
compile, mencari kesalahan dan menyebarkan program netbeans yang
ditulis dalam bahasa pemrograman java namun selain itu dapat juga
mendukung bahasa pemrograman lainnya dan program ini pun bebas
untuk digunakan dan untuk membuat professional dekstop, enterprise,
web, and mobile applications dengan Java language, C/C++, dan bahkan
dynamic languages seperti PHP, JavaScript, Groovy, dan Ruby.
NetBeans merupakan sebuah proyek kode terbuka yang sukses
dengan pengguna yang sangat luas, komunitas yang terus tumbuh, dan
memiliki hampir lebih dari 100 mitra. Sun Microsystems mendirikan
proyek kode terbuka NetBeans pada bulan Juni 2000 dan terus menjadi
sponsor utama. Dan saat ini pun netbeans memiliki 2 produk yaitu
Platform Netbeans dan Netbeans IDE. Platform Netbeans merupakan
framework yang dapat digunakan kembali (reusable) untuk
menyederhanakan pengembangan aplikasi deskto dan Platform NetBeans
juga menawarkan layanan-layanan yang umum bagi aplikasi dekstop,
mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap
aplikasi.
Fitur fitur yang terdapat dalam netbeans antara lain:
1. Smart Code Completion: untuk mengusulkan nama variabel dari
suatu tipe, melengkapi keyword dan mengusulkan tipe parameter
dari sebuah method.
2. Bookmarking: fitur yang digunakan untuk menandai baris yang
suatu saat hendak kita modifikasi.
3. Go to commands: fitur yang digunakan untuk jump ke deklarasi
variabel, source code atau file yang ada pada project yang sama.
4. Code generator: jika kita menggunakan fitur ini kita dapat meng-
generate constructor, setter and getter method dan yang lainnya.
5. Error stripe: fitur yang akan menandai baris yang eror dengan
memberi highlight merah.
Cara menggunakan NetBeans :
Buka NetBeans
Membuat Project Baru
1) Klik icon tambah project
2) Klik kanan pada Source Package uts. Pilih new java class
Script Program :
Class Penghubung
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package latihan1;
/**
*
* @author manda
*/
public class Bus
{
public int penumpang;
public int maxPenumpang;
Class Utama
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package latihan1;
/**
*
* @author manda
*/
public class UjiBus
{
public static void main (String[] args)
{
//membuat objek busMini dari kelas Bus
Bus busMini = new Bus();
Keterangan Script :
Class Penghubung :
1. public class Bus adalah class penghubung karena didalamnya
tdak terdapat fungsi main() dan class ini terdiri dari method-
method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
2. public int penumpang; dan public int maxPenumpang;
adalah variabel global yang mempunyai tipe data integer dan
mempunyai access modifier public yang artinya memberikan hak
akses kepada property agar dapat digunakan oleh class lain.
3. public void cetak()baris ini adalah method yang bernama
cetak yang tidak mempunyai parameter. Method ini digunakan
untuk mencetak kedua variabel global pada method yaitu
System.out.println("Penumpang Bus sekarang adalah "+
Output Program :
Penjelasan Program :
Program ini dibuat untuk menampilkan jumlah penumpang Bus dan
juga kapasitas maksimal penumpang yang dapat ditampung oleh Bus.
Terdapat class penghubung yang berisi property-property dan method-
method yang nantinya pada class utama akan digunakan sebagai objek.
UML program ini access modifier (hak akses) pada variabel ini adalah
(-) yang berarti menggunakan private, akan tetapi pada pengaplikasian
(source code) program access modifier menggunakan public. Hal ini
dikarenakan cara kerja program ini yaitu dengan mengisikan nilai langsung
pada variabel globalnya dan memanggil method untuk menampilkan
nilainya. Apabila access modifier menggunakan private maka pemberian
nilai pada variabel tidak dapat dilakukan secara langsung (mengakses
variabel dengan memanggil variabel), maka harus menggunakan method
mutator untuk pemberian nilai.
Soal :
1. Perhatikan jumlah penumpang Bus terakhir dengan jumlah penumpang
maksimum. Mengapa bisa demikian?
Jawaban :
Jumlah penumpang Bus terakhir adalah 16 dan jumlah penumpang
maksimum adalah 15. Jumlah penumpang melebihi jumlah kapasitas
maksimum penumpang, hal ini dapat terjadi dikarenakan penambahan
penumpang masih dilakukan secara manual dan langsung ditambahkan
pada variabel globalnya dan tanpa dilakukannya sebuah kondisi apabila
penambahan penumpang melebihi batas maksimum, maka penambahan
penumpang gagal dilakukan.
Latihan Praktikum 2
Pemrograman JAVA
Script Program :
Class Penghubung
package bus2;
/**
*
* @author manda
*/
public class Bus2
{
//konstruktor
public Bus2(int maxPenumpang)
{
this.maxPenumpang = maxPenumpang;
penumpang = 0;
}
Class Utama
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package bus2;
/**
*
* @author manda
*/
public class UjiBus2
{
public static void main(String[] args)
{
Bus2 busBesar = new Bus2(40);
busBesar.cetak();
busBesar.addPenumpang(15);
busBesar.cetak();
busBesar.addPenumpang(5);
busBesar.cetak();
busBesar.addPenumpang(26);
busBesar.cetak();
}
}
Keterangan Script :
Class Penghubung :
1. public class Bus2 adalah class penghubung karena didalamnya
tdak terdapat fungsi main() dan class ini terdiri dari method-
method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
2. private int penumpang; dan private int maxPenumpang;
adalah variabel global yang mempunyai tipe data integer dan
mempunyai access modifier private yang artinya memberikan
pembatasan hak akses kepada property yaitu hanya kepada
class itu sendiri.
3. Public Bus2(int maxPenumpang)baris ini adalah method
konstruktor yaitu method yang memberikan nilai awal pada
objek. Method ini mempunyai parameter yang akan memberikan
nilai pada variabel global dengan nilai pada parameter.
4. Public void addPenumpang(int penumpang) baris ini adalah
method yang bernama addPenumpang yang mempunyai
parameter penumpang bertipe data integer. Di dalam method ini
terdapat variabel global yaitu temp yang akan menampung nilai
jumlah penumpang tambahan. Terdapat sebuah kondisi yaitu jika
jumlah penumpang seluruhnya (penumpang awal ditambah
tambahan penumpang) lebih dari batas maksimum penumpang,
maka terdapat pesan bahwa penumpang melebihi kuota. Jika
tidak maka nilai penumpang adalah nilai variabel temp.
5. public void cetak()baris ini adalah method yang bernama
cetak yang tidak mempunyai parameter. Method ini digunakan
untuk mencetak kedua variabel global pada method yaitu
System.out.println("Penumpang Bus sekarang adalah "+
Penjelasan Program :
Program ini dibuat untuk mengetahui jumlah penumpang bus dan
jumlah penumpang maksimum pada bus. Pada program ini terdapat
kondisi untuk mengecek jumlah penumpang tidak melebihi batas
maksimum. Jika jumlah penumpang melebihi batas maksimum maka
penambahan penumpang tidak akan dilakukan.
Latihan Praktikum 3
Pemrograman JAVA
Script Program :
Class Pendukung
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package bus3;
/**
*
* @author manda
*/
//konstruktor
public Bus3(int maxPenumpang)
{
this.maxPenumpang = maxPenumpang;
penumpang = 5;
}
Class Utama
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package bus3;
/**
*
* @author manda
*/
//menginport class scanner yang ada di java
import java.util.Scanner;
busBesar.cetak();
busBesar.getPenumpang(password);
}
}
Keterangan Script :
Class Penghubung :
1. import java.util.Scanner digunakan untuk mengimport class
Scanner yang digunakan untuk menangani inputan.
2. public class Bus3 adalah class penghubung karena didalamnya
tdak terdapat fungsi main() dan class ini terdiri dari method-
method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
3. private int penumpang; private int maxPenumpang; dan
private int penumpangBaru; adalah variabel global yang
mempunyai tipe data integer dan mempunyai access modifier
private yang artinya memberikan pembatasan hak akses kepada
property yaitu hanya kepada class itu sendiri.
4. Scanner inputkey = new Scanner(System.in); adalah
objek dari class Scanner.
5. Public Bus3(int maxPenumpang)baris ini adalah method
konstruktor yaitu method yang memberikan nilai awal pada
objek. Method ini mempunyai parameter yang akan memberikan
nilai pada variabel global dengan nilai pada parameter dan
inisialisasi variabel penumpang dengan nilai 5.
6. public void addPenumpang(int penumpang) baris ini adalah
method yang bernama addPenumpang yang mempunyai
parameter penumpang bertipe data integer. Di dalam method ini
terdapat variabel global yaitu temp yang akan menampung nilai
jumlah penumpang tambahan. Terdapat sebuah kondisi yaitu jika
jumlah penumpang seluruhnya (penumpang awal ditambah
tambahan penumpang) lebih dari batas maksimum penumpang,
maka terdapat pesan bahwa penumpang melebihi kuota. Jika
tidak maka nilai penumpang adalah nilai variabel temp.
7. public void getPenumpang(int pw)baris ini adalah method
yang bernama getPenumpang yang mempunyai parameter pw
bertipe data integer. Di dalam method ini terdapat variabel global
yaitu pass yang bertipe data integer dan mempunyai nilai 1234.
Terdapat sebuah kondisi untuk membandingkan nilai dari
parameter dengan nilai variabel global pass jika nilainya sama
maka dapat menginputkan jumlah penumpang baru yang akan
ditampung pada variabel penumpangBaru lalu memanggil method
addPenumpang dengan mengisikan parameter dengan
penumpangBaru. Jika nilai dari parameter dengan nilai variabel
global pass jika nilainya tidak sama maka tidak akan dapat untuk
menambah penumpang.
8. public void cetak()baris ini adalah method yang bernama
cetak yang tidak mempunyai parameter. Method ini digunakan
untuk mencetak kedua variabel global pada method yaitu
System.out.println("Penumpang Bus sekarang adalah "+
Output Program :
Penjelasan Program :
Program ini dibuat untuk mengetahui jumlah penumpang bus dan
jumlah penumpang maksimum pada bus. Sebelum menambahkan jumlah
penumpang, kita harus menginputkan password terlebh dahulu. Jika
password yang diinputkan benar maka dapat menambahkan penumpang,
apabila salah tidak akan dapat menambahkan penumpang, dan jumlah
penumpang sama dengan jumlah penumpang sebelum ditambahkan.
IV. TUGAS PRAKTIKUM
Tugas Praktikum 1
Pemrograman JAVA
Script Program :
Class Pendukung
package tugasprak1;
import java.util.Scanner;
public class Bus4
{
private double penumpang;
private double maxPenumpang;
private double counter;
private double penumpangBaru;
Scanner input = new Scanner(System.in);
//menambahkan penumpang
public void addPenumpang(double penumpang)
{
double temp;
temp=this.penumpang+penumpang;
if(temp>maxPenumpang){
System.out.println("Penumpang melebihi kuota");
}
else
{
this.penumpang=temp;
}
}
Class Utama
package tugasprak1;
import java.util.Scanner;
public class UjiBus4
{
public static void main (String[] args)
{
//membuat objek busBesar dari kelas Bus
Bus4 busBesar = new Bus4(20);
Scanner input = new Scanner(System.in);
busBesar.cetak();
System.out.print("Masukan Password: ");
int password = input.nextInt();
busBesar.getPenumpang(password);
busBesar.getAverage();
}
}
Keterangan Script :
Class Penghubung :
1. import java.util.Scanner digunakan untuk mengimport class
Scanner yang digunakan untuk menangani inputan.
2. public class Bus4 adalah class penghubung karena didalamnya
tdak terdapat fungsi main() dan class ini terdiri dari method-
method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
3. private double penumpang; private double
maxPenumpang;, private double counter;, dan private
Output Program :
Penjelasan Program :
Program ini dibuat untuk mengetahui jumlah penumpang bus dan
jumlah penumpang maksimum serta rata-rata penambahan pennumpang
pada bus. Sebelum menambahkan jumlah penumpang, kita harus
menginputkan password terlebh dahulu. Jika password yang diinputkan
benar maka dapat menambahkan penumpang, apabila salah tidak akan
dapat menambahkan penumpang, dan jumlah penumpang sama dengan
jumlah penumpang sebelum ditambahkan. Setelah itu ditampilkan rata-rata
dari penumpang bus
Tugas Praktikum 2
Pemrograman JAVA
Tabung
- jari : int
- tinggi : int
- phi : double
+ Tabung(int jari, int tinggi )
+ setJari(int jari)
+ setTinggi(int tinggi)
+ showDiameter()
+ showLP()
+ showVolume()
Script Program :
Class Penghubung
/*
* To change this license header, choose License Headers in Project
Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package testtr2;
/**
*
* @author manda
*/
public class Tabung {
private int jari;
private double phi=3.14;
import java.util.Scanner;
/**
*
* @author manda
*/
public class TestTR2 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Keterangan Script :
Class Penghubung :
1. public class Tabung() adalah class penghubung karena
didalamnya tdak terdapat fungsi main() dan class ini terdiri dari
method-method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
2. private int jari; private int tinggi; private double
Output Program :
Penjelasan Program :
Program ini dibuat untuk menghitung Volume dan Luas Permukaan
dari Tabung. Pertama menginputkan jari-jari yang akan dihitung Volume
dan Luas Permukaannya, kemudian dilakukan perhitungan dengan tabung
yang lebih besar yaitu dengan ukuran jari-jari yang lebih besar 2x dari
sebelumnya. Kemudian dihitung Volume dan Luas Permukaannya.
V. TUGAS RUMAH
Tugas Rumah 1
Pemrograman JAVA
Script Program :
Class Penghubung
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package tr2;
import javax.swing.JOptionPane;
/**
*
* @author manda
*/
public class SkinCare
{
public String paket;
private double harga;
private double k;
import javax.swing.JOptionPane;
/**
*
* @author manda
*/
public class TR2 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
SkinCare obj= new SkinCare();
String j = JOptionPane.showInputDialog("Pilihan Paket:"
+ "1. Facial\n"
+ "2. Peeling\n"
+ "3. Manicure\n"
+ "4. Pedicure\n");
obj.jenis(j);
JOptionPane.showMessageDialog(null,"Total Harga : Rp."
+obj.getHarga());
String bayar = JOptionPane.showInputDialog("Bayar : ");
double b= Double.valueOf(bayar).doubleValue();
obj.transaksi(b);
}
}
Keterangan Script :
Class Penghubung
1. import javax.swing.JOptionPane; mengimport kelas
JOptionPane untuk inputan berbasis GUI yang telah disediakan oleh
JAVA
2. public class SkinCare adalah class penghubung karena
didalamnya tdak terdapat fungsi main() dan class ini terdiri dari
method-method yang dapat diakses oleh class utama, class harus
mempunyai nama yang sama dengan file penyimpannya. public
adalah akses modifier yang menunjukan class dapat diakses oleh
publik.
3. public String paket; private double harga; private
double k; adalah variabel global yang mempunyai access modifier
public pada variabel paket yang dapat diakses oleh class manapun
dan mempunyai access modifier private pada variabel lainnya yang
artinya memberikan pembatasan hak akses kepada property yaitu
hanya kepada class itu sendiri.
4. public void SkinCare() baris ini adalah method konstruktor
yaitu method yang memberikan nilai awal pada objek. Method ini
mempunyai memberi nilai 0 pada variabel harga dan k
5. public void jenis(String j) baris ini adalah method yang
digunakan untuk memilih jenis paket. Jenis paket ini lah yang akan
menentukan harga.
6. public double getHarga() baris ini adalah method yang
digunakan untuk memanggil atau mengembalikan nilai harga
dengan keyword return. Method ini merupakan method accessor
7. public void transaksi(double b) baris ini adalah method yang
digunakan untuk mendapatkan hasil kembalian dan menampilkan
nota transaksi yang telah dilakukan
Class Utama
1. import javax.swing.JOptionPane; mengimport kelas
JOptionPane untuk inputan berbasis GUI yang telah disediakan oleh
JAVA
2. public class TR2 adalah class utama karena fungsi main() terdapat
pada class ini, class harus mempunyai nama yang sama dengan file
penyimpannya. public adalah akses modifier yang menunjukan
class dapat diakses oleh publik.
3. public static void main(String []args) adalah method (fungsi)
utama yang akan dijalankan ketika program di eksekusi. Method
adalah unit program yang menjalankan aksi tertentu . static void
method ini bersifat static yang berarti tetap dan kosong yang
menunjukan bahwa method ini tidak menghasilkan apa-apa pada
system operasi. (String []args) adalah parameter yang
menunjukan bahwa method dapat menerima sebuah string yang
diketikan user.
4. SkinCare obj= new SkinCare(); adalah objek dari class
SkinCare.
5. String j; baris ini adalah variabel untuk menampung nilai inputan
yang akan digunakan untuk memilih paket.
6. obj.jenis(j); baris ini digunakan untuk memanggil method jenis
pada class objek dan parameter j yang akan digunakan untuk
mencocokan nilai pada isi yang terdapat dalam method tersebut.
7. JOptionPane.showMessageDialog(null,"Total Harga : Rp."
Output Program :
Penjelasan Program :
Program ini dibuat untuk mempermudah transaksi pembayaran dalam
bidang perawatan. Dalam program ini terdapat pilihan paket, dimana setiap
paket berbeda harganya. Setelah memilih paket, program akan menampilkan
harga paket lalu petugas akan menginputkan pembayaran dari pelanggan dan
program secara otomatis akan menampilkan rincian nota transaksi
Tugas Rumah 2
Pemrograman JAVA
+ SPBU()
+ jenis(String j)
+ public void th(double t)
+ public void nota(double b,double t)
Script Program :
Class Penghubung
/*
* To change this license header, choose License Headers
in Project Properties.
* To change this template file, choose Tools |
Templates
* and open the template in the editor.
*/
package tr1;
/**
*
* @author manda
*/
import javax.swing.JOptionPane;
public class SPBU
{
public String merk;
private double harga;
private double byr;
private double k;
Class Utama
/*
* To change this license header, choose License Headers in
Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package tr1;
/**
*
* @author manda
*/
import javax.swing.JOptionPane;
public class TR1 {
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
SPBU obj= new SPBU();
String j = JOptionPane.showInputDialog("Pilihan BBM :
\n" + "1. Premium\n"
+ "2. Pertamax\n"
+ "3. Pertamax Plus\n"
+ "4. Solar\n"
+ "5. Pertalite");
obj.jenis(j);
String total = JOptionPane.showInputDialog("Berapa
liter ?");
double t= Double.valueOf(total).doubleValue();
obj.th(t);
String bayar =
JOptionPane.showInputDialog("Pembayaran : ");
double b= Double.valueOf(bayar).doubleValue();
obj.nota(b,t);
}
}
Keterangan Script :
Class Penghubung
1. import javax.swing.JOptionPane; mengimport kelas
JOptionPane untuk inputan berbasis GUI yang telah disediakan oleh
JAVA
2. public class SPBU adalah class penghubung karena didalamnya
tdak terdapat fungsi main() dan class ini terdiri dari method-method
yang dapat diakses oleh class utama, class harus mempunyai nama
yang sama dengan file penyimpannya. public adalah akses modifier
yang menunjukan class dapat diakses oleh publik.
3. public String merk; private double harga; private
Output Program :
Penjelasan Program :
Program ini dibuat untuk membuat nota transaksi dari PERTAMINA.
Dalam program ini terdapat pilihan bahan bakar, dimana setiap bahan bakar
berbeda harganya. Setalah memilih jenis bahan bakar, program akan
menanyakan berapa liter bahan bakar yang akan dibeli. Lalu program akan
menampilkan total harga yang akan dibayar oleh pembeli dari total bahan
bakar yang dibeli dikalikan dengan harga satuan per liter. Setelah itu
dilakukan penginputkan dari uang yang dibayarkan pembeli untuk
menentukan kembalian user, kemudian program akan menampilkan nota
transaksi.
VI. KESIMPULAN
Enkapsulasi adalah suatu cara untuk menyembunyikan informasi detail
dari suatu class. Degan adanya enkapsulasi ini dapat mengamankan data yang
kita miliki dengan menentukan pembatasan akses data. Terdapat 3 hak akses
yaitu :
o Private memberikan hak akses hanya kepada anggota class tersebut untuk
menggunakan atau mengubah nilai dari property atau method tersebut.
o Protected memberikan hak akses kepada anggota class nya dan anggota
class hasil inheritance (penurunansifat) dari class tersebut.
o Public memberikan hak akses kepada property dan method agar
dapat digunakan diluar class tersebut.
Dasar dari enkapsulasi adalah information hiding yaitu penyembunyian
informasi dari suatu class menggunakan akses control dan interface to access
dat yaitu membuat suatu interface berupa method untuk menginisialisasi atau
merubah nilai dari suatu atribut tersebut. Method yang digunakan adalah
method accessor dan method mutator. Methods Accessor digunakan untuk
membaca nilai variabel pada class, baik berupa instance maupun static.
Methods Mutator di gunakan untuk mengubah atau memberi nilai variable
pada class, baik berupa instance maupun static.
VII. DAFTAR RUJUKAN
1. Tim Asisten Dosen. 2015. Modul 4 Enkapsulasi. Malang : Unversitas
Negeri Malang.
2. Kadir, Abdul. 2010. Mudah Menjadi Programmer Java.Yogyakarta : Andi
Offset
3. Sanchez, Julio & Maria P. Canton. 2010. Java 2 Weekend Crash
Course.Jakarta : PT. Elex Media Komputindo
4. http://fahrun-it.blogspot.co.id/2013/05/pengertian-netbeans.html, diakses
14 oktober 2015