Anda di halaman 1dari 104

LAPORAN PRAKTIKUM

BAHASA PEMROGRAMAN JAVA

Nama

Nomor

Praktikan

Mahasiswa

Putri
Mufidah Sari

Tanggal Kumpul

Kelas
SI 5 B PAGI

Tanda tangan
Pratikan

1214370265

Nama Penilai

Tanggal Koreksi

Nilai

Indri Sulistia
Ningsih, S.Kom
Universitas Pembangunan Panca Budi
Fakultas Teknik
Jurusan Sistem Informasi
Medan
2015

Tanda tangan
Dosen

KATA PENGANTAR
Puji syukur saya panjatkan kepada Tuhan yang Maha Esa karena dengan berkat dan kasih
anugerahnya-Nya saya masih diberikan kesehatan sehingga akhirnya dapat menyelesaikan
Laporan Pratikum Bahasa Pemrograman Java .
Saya ingin mengucapkan terima kasih kepada Ibu Indri Sulistia Ningsih selaku dosen
pembimbing yang mengajarkan mata kuliah ini.Saya juga menyadari bahwa membuat
Laporan Prattikum ini belum sempurna baik dalam penulisan maupun isi disebabkan
keterbatasan kemampuan saya.Demikian dan saya ucapkan terima kasih.

Medan, Januari 2015

Daftar Isi

Kata Pengantar ..............................................................................................................

Daftar Isi ..........................................................................................................................

ii

Bab 1 Pendahuluan ..........................................................................................................

a. Umum ..................................................................................................................

b. Latar Belakang .....................................................................................................

c. Tujuan Praktikum.................................................................................................

Baba 2 Landasan Teori ....................................................................................................

a. Pengenalan Java dan NetBeans ............................................................................

b. Operator ...............................................................................................................

c. Class, Object, dan Method ...................................................................................

14

d. Struktur Perulangan dan Percabangan .................................................................

18

e. Pemrograman Berorientasi Objek ........................................................................

22

Bab 3 Bab 3 Hasil Percobaan/Praktikum (Modul 2-8) ....................................................

32

Bab 4 Analisa Hasil Percobaan (Modul 2-8) ...................................................................

92

Penutup ............................................................................................................................

99

Daftar Pustaka

BAB I
Pendahuluan
A.Umum
IDE (Integrated Development Environtment) adalah sebuah software yang digunakan untuk
membuat aplikasi dari bahasa pemograman tertentu.
Jenis jenis IDE :

NetBeans IDE

Eclipse IDE

Visual Basic IDE

Borland Delphi IDE

NetBeans mengacu pada dua hal, yakni platform untuk pengembangan aplikasi desktop java,
dan sebuah Integrated Development Environment (IDE) yang dibangun menggunakan
platform NetBeans.
Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat
lunak moduler yang disebut modul. Sebuah modul adalah suatu arsip Java (Java archive)
yang memuat kelas-kelas Java untuk berinetraksi dengan NetBeans Open API dan file
manifestasi yang mengidentifikasinya sebagai modul.
Karena modul dapat dikembangkan secara independen, aplikasi berbasis platform NetBeans
dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.

B.Latar Belakang
Dalam era globalisasi ini perkembangan teknologi memegang andil yang sangat besar
dalam kehidupan masyarakat. Dalam segi kehidupan, masyarakat memanfaatkan
perkembangan teknologi tersebut untuk mempermudah penyelesaian berbagai
pekerjaan. Tak terkecuali dalam hal penyampaian informasi. Informasi adalah data
yang diolah menjadi bentuk yang lebih berguna dan lebih berarti bagi penerimanya.
Kini perkembangan teknologi informasi semakin pesat dan memberikan
banyak manfaat bagi manusia di berbagai aspek kehidupan. Proses trasmisi atau
pemindahan sebuah file dari suatu sistem komputer ke sistem komputer lainnya sangat
dibutuhkan utuk terciptanya teknologi informasi yang bermanfaat. Tanpa proses
transmisi, informasi tidak akan sampai kepada user yang membutuhkan atau
penerimanya.
Netbeans salah satu program IDE java yang sangat komplit khususnya fasilitas yang
disediakan untuk mengembangkan aplikasi berbasis java. Ada beberapa faktor yang
menyebabkan penggunaan Netbeans sebagai aplikasi yang populer saat ini yaitu karena di
dalam Netbeans terdapat beberapa plugin yang bisa di tambahkan, serta Netbeans bisa untuk
membuat berbagai software aplikasi komputer maupun handphone dari menulis pemograman
javascript sampai C++. Untuk itu saya mencoba membuat laporan pratikum bahasa
pemrograman java menggunakan Netbeans.

C.Tujuan Pratikum

Agar mahasiswa memahami tentang dasar-dasar bahasa pemrograman java.

Mahasiswa dapat mempraktekkan dan mngimplementasikan program java sederhana


dengan NetBeans

Agar mahasiswa dapat mempraktikkan dan membuktikan implementasi program java


dengan NetBeans

BAB II
A.Pengenalan Java dan NetBeans

Sebelum melangkah kepada penjelasan Object Oriented Programming (OOP) yang


nantinya akan kita implementasikan di bahasa pemrograman java, maka perlu kiranya kita
mengetahui dan mengenal java.

Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat dijalankan
pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus pada satu
sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat open source.
Java berasal dari pengembangan bahasa C++ sehingga strukturnya seperti bahasa C++.

Ialah James Gosling dan Patrick Naughton yang berhasil mengembangkan Java dalam
suatu proyek dari SUN Microsystem. Awalnya James ingin memberi bahasa pemrograman
tersebut dengan nama OAK yang berasal dari pohon yang terdapat pada kantor James
Gosling, tetapi akhirnya diberi nama Java setelah mendapat ide sewaktu minum kopi.
Java sering digunakan oleh semua segmen, karena mampu merambah seluruh hal, dari
pemrogaman dekstop hingga pemrograman mobile (mobile programming) dan Java juga
terkenal mudah digunakan, karena seluruh sistem operasi dapat menjalankan Java. Sistem
operasi itu antara lain Window, Linux, DOS, Unix, dan lain-lainnya sehingga banyak
pengguna memakainya.
Java telah berkembang dari semula diciptakan untuk pemrograman applet (program
komputer yang telah dikompilasi menjadi bytecode, yaitu suatu keadaan program yang dapat
dieksekusi langsung; tambahan di dalam suatu homepage selain gambar) yang berjalan di
4

web browser menjadi bahasa pemrograman yang terkenal untuk pengembangan


berbagai aplikasi komputer yang berjalan di beragam perangkat mulai dari handled devices
seperti handphone, PDA (Personal Digital Assistant) sampai aplikasi khusus yang tersebar di
berbagai macam komputer server.
Apakah bahasa Java itu mudah? Bahasa Java merupakan bahasa sederhana, hanya terdiri
beberapa struktur yang tetap, sering disebut sebagai bahasa C++ yang kurang, karena
susunannya yang lebih kecil dibanding bahasa C++. Namun karena diatur sec
secara baik, bahasa Java mudah diperluas melalui pengembangan-pengembangan untuk
keperluan khusus.
Namun bila dikaitkan dengan seluruh kemampuan yang luar biasa tentu java bukan bahasa
yang sederhana dan mudah. Walaupun begitu bila kita menyenanginya, mempelajari bahasa
Java tidaklah terlalu sulit.

Mengapa Mempelajari JAVA?


Berdasarkan white paper resmi dari SUN, Java memiliki karakteristik berikut :
1. Sederhana (Simple)
Bahasa pemrograman Java menggunakan Sintaks mirip dengan C++ namun sintaks pada
Java telah banyak diperbaiki terutama menghilangkan penggunaan pointer yang rumit dan
multiple inheritance. Java juga menggunakan automatic memory allocation dan memory
garbage collection.
2. Berorientasi objek (Object Oriented)
Java mengunakan pemrograman berorientasi objek yang membuat program dapat dibuat
secara modular dan dapat dipergunakan kembali. Pemrograman berorientasi objek
5

memodelkan dunia nyata kedalam objek dan melakukan interaksi antar objek-objek
tersebut.
3. Terdistribusi (Distributed)
Java dibuat untuk membuat aplikasi terdistribusi secara mudah dengan adanya libraries
networking yang terintegrasi pada Java.
4. Interpreted
Program Java dijalankan menggunakan interpreter yaitu Java Virtual Machine (JVM).
Hal ini menyebabkan source code Java yang telah dikompilasi menjadi Java bytecodes
dapat dijalankan pada platform yang berbeda-beda.
5. Robust
Java mempuyai reliabilitas yang tinggi. Compiler pada Java mempunyai kemampuan
mendeteksi error secara lebih teliti dibandingkan bahasa pemrograman lain. Java
mempunyai runtime-Exception handling untuk membantu mengatasi error pada
pemrograman.
6. Secure
Sebagai bahasa pemrograman untuk aplikasi internet dan terdistribusi, Java memiliki
beberapa mekanisme keamanan untuk menjaga aplikasi tidak digunakan untuk merusak
sistem komputer yang menjalankan aplikasi tersebut.
7. Architecture Neutral
Program Java merupakan platform independent. Program cukup mempunyai satu buah
versi yang dapat dijalankan pada platform berbeda dengan Java Virtual Machine.

8. Portable
Source code maupun program Java dapat dengan mudah dibawa ke platform yang
berbeda-beda tanpa harus dikompilasi ulang.

9. Performance
Performance pada Java sering dikatakan kurang tinggi. Namun performance Java dapat
ditingkatkan menggunakan kompilasi Java lain seperti buatan Inprise, Microsoft ataupun
Symantec yang menggunakan Just In Time Compilers (JIT).
10. Multithreaded
Java mempunyai kemampuan untuk membuat suatu program yang dapat melakukan
beberapa pekerjaan secara sekaligus dan simultan.
11. Dynamic
Java didesain untuk dapat dijalankan pada lingkungan yang dinamis. Perubahan pada
suatu class dengan menambahkan properties ataupun method dapat dilakukan tanpa
menggangu program yang menggunakan class tersebut.

NetBeans
NetBeans mengacu pada dua hal, yakni platform untuk mengembangkan aplikasi desktop
java, dan sebuah Integrated Development Environtment (IDE) yang dibangun menggunakan
platform NetBeans.

Platform NetBeans memungkinkan aplikasi dibangun dari sekumpulan komponen perangkat


lunak moduler yang disebut Modul. Sebuah modul adalah suatu arsip java (Java archive)

yang memuat kelas kelas java untuk berinteraksi dengan NetBeans Open API dan file
manifestasi yang mengidentifikasinya sebagai modul.

Karena modul dapat dikembangkan secara independent, aplikasi berbasis platform NetBeans
dapat dengan mudah dikembangkan oleh pihak ketiga secara mudah dan powerful.

NetBeans IDE Java yang Kaya Fitur


Menggunakan text editor seperti Notepad dsb sebenarnya sudah bisa dilakukan untuk
menulis program Java. Kemudian compile dan running dilakukan dalam konsol. Akantetapi
dengan menggunakan IDE akan semakin memudahkan programmer untuk membuat kode
program, memenej, mengkompie dan menjalankan program. Salahsatu IDE yang banyak
digunakan untuk mengembangkan program Java adalah NetBeans. Ketika modul ini ditulis,
versi terakhir dari NetBeans yang dirilis adalah NetBeans 6.9.1.

Membuat Project Baru

Langkahlangkah membuat project baru sebagai berikut:


1. Buat file project baru File > New Project
2. Pilih kategori dan jenis Project. Untuk matakuliah ini kategori yang dipilih adalah Java
dan untuk Project adalah Java Application
3. Berikan nama project pada field Project Name, dan tetnukan Project Location dimana
letak folder project nya ditempatkan.
4. Finish

Membuat Klas, Mengcompile dan Running Program

Program yang sebelumnya sudah dibuat akan dibuat ulang dengan menggunakan
NetBeans. Langkah nya sebagai berikut:
1. Pada Project yang baru dibuat dalam hal ini adalah MyOop, klik kanan paa Source
Packages > New > Java Class
2. Masukkan nama klas nya yaitu HelloWorld
3. NetBeans akan membuat file HelloWorld.java tempat kita akan menuliskan kode
program Hello World
4. Untuk mengkompile, klik kanan file HelloWorld.java dan pilih Compie File
5. Untuk menjalankan program langkahnya sama, klik kanan pada file HeloWorld.java dan
pilih Run File.

B.Operator
Operator adalah symbol dan karakter khusus yang kita gunakan dalam bahasa
pemrograman untuk mengubah nilai suatu operand. Sebagai contoh, symbol + adalah
operator penambahan dalam Java. Kita menggunakan operator ini untuk melakukan
penjumlahan dari dua operand. Di bawah ini beberapa contoh tpe operator dalam JAVA.
Operator Aritmatika
Operator aritmatika digunakan untuk melakukan operasi matematika, seperti penambahan,
pengurangan, pembagian, dan modulo (atau sisa pembagian).

Operator Increment dan Decrement


Operator ini berfungsi untuk menghitung counter baik itu menambah dan mengurangi nilai
dari variabel bersangkutan dengan nilai 1 dan biasanya digunakan dalam looping/perulangan.
Untuk increment simbolnya : (++), sedangkan decrement simbolnya : ().Untuk
penempatanya dapat diletakan sebelum ataupun sesudah operand/variabel. Namun fungsi
penempatan akan mempengaruhi dari proses masing-masing. Jika increment dan decrement
diletakan sebelum variabel, maka nilai increment dan decrement akan diproses terlebih
dahulu baru berlanjut ke proses lainnya. Sedangkan jika increment dan decrement diletakan
sesudah variabel, maka nilai dari increment dan decrement tidak akan diproses dahulu
melainkan nilai varibel lama yang diproses terlebih dulu, kemudian pada proses berikutnya
nilai increment maupun decrement akan terproses. Berikut contoh dari fungsi menempatkan
increment dan decrement: ++A/A++ dan A/A

Operator Relasi
Dari kata relasi kita bisa menyimpulkan sebuah arti hubungan, sehingga operator relasi
dalam pemrograman java adalah sebuah fungsi yang membandingkan dua nilai
variabel/operand untuk menentukan keterkaitan hubungan keduanya. Hasil kedua nilai
variabel adalah true atau false ( boolean ). Simbol dari relasi diantaranya: ( >, <, >=, <=, ==,
!= )

10

Operator Logika
Operator ini berfungsi untuk menentukan nilai kebenaran dari masing-masing nilai
variabel/operand pembentuknya.Sifat dari nilai adalah true dan false ( boolean ). Simbol dari
operator logika diantaranya:
( &&. &, ||, |, ^, ! )

&&(logical) dan&(boolean logical) AND

|| (logical) dan | (boolean logical) inclusive OR

^ (boolean logical exclusive OR)

! ( logical NOT)

Perbedaan dari operator && (logika AND) dan & (boolean AND) ?

Operator && (logika AND) : singkatnya && akan mengeksekusi variabel hanya
sebagian dan nilai yang dicari adlah true. Jika nilai awal adalah false maka hasil akan
false dan akan mengabaikan variabel berikutnya.

Operator & (boolean AND) : kebalikan dari && yaitu akan mengeksekusi semua
variabel hingga mendapatkan nilai kembalianya. Nilai yang diminta adalah true,
walaupun nilai awal false/true operator akan tetap mengeksekusi variabel berikutnya.

Kesimpulannya nilai pada kedua operator adalah nilai yang mengandung true pada tiap-tiap
variabelnya.

11

&& (Logika AND) dan && (Boolean Logika AND)


Tabel Kebenaran :

Operator kondisi AND menghasilkan "true" apabila kedua operandnya bernilai "true". Jika
salah satunya atau keduanya "false", operator ini menghasilkan "false". Perbedaan dasar
antara operator && dan & adalah bahwa && mensupport short-circuit evaluations (atau
evaluasi perbagian) ,sementara operator & tidak.

| | (Logika OR) dan | (Boolean Logika Inclusive OR)


Tabel Kebenaran :

Perbedaan dasar antara operator | | dan | adalah bahwa | | mensupport short-circuit evaluations
(atau evaluasi perbagian) ,sementara operator | tidak.
12

^ (boolean exclusive OR)


Tabel Kebenaran :

asil operasi operator exclusive OR adalah True, jika dan hanya jika satu operand bernilai
True dan yang lain bernilai False. Catatan jika kedua operand harus selalu dievakuasi untuk
menjumlahkan hasil dari suatu exclusive OR.
! (logika NOT)
Tabel Kebenaran :

Operator NOT ("!") melakukan operasi boolean NOT pada operand atau ekspresi tunggal.
Operator ini mengecek nilai boolean dari suatu operand atau expresi kemudian membalik
nilainya (dari true ke false atau false ke true). Berikut ini adalah tabel kebenaran operator
NOT.

13

OperatorKondisi
Operator ini berfungsi sebagai pembanding tiga atau lebih variabel untuk menemukan nilai
yang ingin dicapai. Operator ini bersifat ternary (mengoperasikan lebih dari dua operand).
Contoh penulisan dengan simbol operator kondisi diantaranya:

Pada dasarnya operator "?:" akan mengevaluasi "kondisi". Apabila kondisi bernilai "true",
operator akan mengembalikan "jika_benar", tetapi apabila "kondisi" bernilai "false", operator
akan mengembalikan "jika_salah". Misalnya:
x =(1>2)?10:20
Dari contoh di atas, "x" akan memiliki nilai 20, karena ekspresi (1 > 2) adalah salah (atau
"false").

C. Class,Method,Object

Class
Class merupakan suatu blueprint atau cetakan untuk menciptakan suatu instant dari
object. class juga merupakan grup suatu object dengan kemiripan attributes/properties,
behaviour dan relasi ke object lain.

14

Method
Method merupakan suatu operasi berupa fungsi-fungsi yang dapat dikerjakan
oleh suatu object. Method didefinisikan pada class akan tetapi dipanggil melalui object.
Metode menentukan perilaku objek, yakni apa yang terjadi ketika objek itu dibuat
serta berbagai operasi yang dapat dilakukan objek sepanjang hidupnya.
Metode memiliki 4 (empat) bagian dasar :
1. Nama metode
2. Tipe Objek atau tipe primitive yang dikembalikan metode.
3. Daftar parameter.
4. Badan atau isi metode.

Constructor
Constructor merupakan method khusus yang digunakan untuk menginisialisasi objek, dan
tiap class boleh memiliki lebih dari satu constructor.
Perbedaan method biasa dengan constructor adalah bahwa constructor harus memiliki nama
yang sama dengan nama class-nya dan tidak memiliki nilai kembalian.

Constructor dijalankan pada saat sebuah objek diinisialisasi (menggunakan kata new). Pada
constructor juga berlaku overloading, artinya boleh mendeklarasikan lebih dari satu
constructor, asalkan memiliki parameter yang berbeda.

Modifier
Modifier adalah sifat yang dimiliki oleh setiap atribut, method maupun class dalam java. Ada
empat macam modifier yang dikenal oleh Java, yaitu private, protected, public dan default.

15

Wilayah Akses

Public Protected Default Private

Kelas yang sama

ya

ya

ya

ya

Antar Kelas dalam package yang sama ya

ya

ya

tidak

Subkelas di package yang berbeda

ya

tidak

tidak

tidak

tidak

tidak

ya

bukan subkelas, package yang berbeda ya

Beberapa modifier penting lainnya:

Static yaitu modifier yang digunakan agar suatu atribut maupun method dapat diases
oleh objek atau kelas lain meski tanpa dilakukan instansiasi terhadap kelas dimana
atribut maupun method itu berada, method main adalah salah satu contoh method
modifier static yang sering digunakan.

Final yaitu modifier yang digunakan untuk mencegah kemungkinan modifikasi


terhadap atribut maupun method, dengan modifier ini suatu atribut akan berlaku
sebagai konstanta.

Object
sebuah kelas dapat digunakan untuk membuat banyak objek, setiap objek dapat
dilakukan secara berbeda oleh objek-objek lain yang menggunakannya. di butuhkan
operator new untuk membuat objek dari suatu kelas.
objek dibuat dengan cara menuliskan :
1. NamaKelas NamaObjek = new NamaConstractor();
16

2. NamaKelas Namaobjek;
NamaObjek = new NamaConstractor();
proses di atas disebut instansiasi. ketika objek selesai dibuat, objek tersebut disimpan
didalam memori dan dapat diakses oleh objek-objek lain melalui nama objeknya.

D.Struktur Perulangan dan Percabangan


Percabangan dan Perulangan Pemrograman Java
Pada saat belajar pemrograman java, maka yang paling basic adalah kita harus mengerti
tentang konsep umum dalam pemrograman. Misalnya:

Percabangan (if/else, switch)

Perulangan (for, while, do while)

Function pada C++ atau Method pada java (public,privat,protect)

1. Percabangan

Percabangan adalah suatu keadaan dimana pernyataan dapat dieksekusi apabila suatu
kondisi memenuhi syarat untuk mengerjakan pernyataan tersebut
Percabangan pada Java ada 2 yaitu :

if

Percabangan if merupakan percabangan yang melibatkan lebih dari satu kondisi dam
penggabungan beberapa if dan bisa juga digabungkan menjadi if-else

17

Switch

percabangan switch memberikan suatu cara untuk mengatasi banyak kemungkinan


bermunculan dengan cara memberikan nilai variabel atau pernyataan tunggal.

Berikut merupakan contoh percabangan dari if dan switch:


class teskeputusan{
public static void main (String[] args) {
char jeniskelamin='w';
//nested if
if (jeniskelamin=='L')
System.out.println("Cowok");
else if (jeniskelamin=='P')
System.out.println("Cewek");
else
System.out.println("Banci");

//tenary
System.out.println(jeniskelamin=='P'? "Dia Pasti Cowok." : "Dia Pasti Cewek");

//switch case
switch (jeniskelamin){
case 'L' : System.out.println("Cowok");
break;
case 'P' : System.out.println("Cewek");
break;
default : System.out.println("Banci");
break;
}}}

18

2.Perulangan
Perulangan atau looping adalah suatu proses di dalam pemrograman yang dapat meng
eksesusi beberapa statement yang sama dengan berulang ulang sampai berhenti pada kondisi
tertentu. Perulangan pada dasarnya memiliki fungsi "EFISIEN". ada 3 jenis perulangan yaitu:

for

For merupakan perulangan yang memiliki variable untuk melakukan pengkondisian.


Element pada for yaitu nilai awal, syarat, dan penambahan atau pengurangan nilai. misalnya

Struktur Penulisan Perulangan For

Contoh Penulisan Perulangan For pada Code Program

While

While merupakan perulangan yang berguna untuk terus melakukan proses perulangan
selama kondisinya benar (true) dan berhenti apabila salah (false). misalnya:

19

Struktur Penulisan Perulangan While

Contoh Penulisan Perulangan While pada Code Program

do.....while

Do while merupakan perulangan yang hampir sama dengan while, namun while disini
bersifat memproses atau mengecek instruksi terlebih dahulu kemudian membandingkan
(kondisi). sedangkan pada while bersifat mengecek kondisi baru melakukan instruksi. Misal

20

Struktur Penulisan Perulangan Do... While

Contoh Penulisan Perulangan Do.. While pada Code Program

21

3. Method

Method dalam java serupa dengan function pada bahasa pemrograman yang lain,yang
berfungsi memodularisasi, mem break atau memecah program yang komplek sehingga
nantinya dapat digunakan/dipanggil kembali

Mendeklarasikan Method
<methodDeclaration> ::=
<modifier> <returnType> <name>(<parameter>*) {
<statement>*
}
<parameter> ::=
<parameter_type> <parameter_name>[,]
contoh method:
class MethodDemo {
int data;
int getData() {
return data;
}
void setData(int data) {
this.data = data;
}
void setMaxData(int data1, int data2) {
data = (data1>data2)? data1 : data2;
}
}
contoh program dengan method:
public class TesMak
{
/** Main method */
public static void main(String[] args)
{
int i = 5;
int j = 2;

int k = mak(i, j);


System.out.println(The maximum between + i + and + j + is + k);
}
/** Return the max between two numbers */
public static int mak(int num1, int num2)
{
int hasil;
if (num1 > num2)
hasil = num1;
else
hasil = num2;
return hasil;
}
}

Yang

perlu

anda

ketahui,

Di

dalam

java

terdapat

empat

akses

yaitu

default,private,protected,dan public tentunya tingkat akses tersebut mempunyai fungsi dan


kegunaan masing-masing.untuk keterangan dari tingkat akses akan saya jelaskan di bawah ini
:

Akses Default (Package Accessibility)

Tipe ini mensyaratkan bahwa hanya class dalam package yang sama yang memiliki hak akses
terhadap variabel dan methods dalam class.
contoh potongan program :
23

public class StudentRecord


{
//akses dasar terhadap variabel
int name;
//akses dasar terhadap metode
String getName(){
return name;
}
}

Pada contoh diatas, variabel nama dan method getName() dapat diakses dari object lain
selama object tersebut berada pada package yang sama dengan letak dari file StudentRecord.

Akses Public

Tipe ini mengijinkan seluruh class member untuk diakses baik dari dalam dan luar class.
Object apapun yang memiliki interaksi pada class memiliki akses penuh terhadap
member dari tipe ini.

244444

contoh potongan program :


public class StudentRecord
{
//akses dasar terhadap variabel
public int name;
//akses dasar terhadap metode
public String getName(){
return name;
}}

variabel name dan method getName() dapat diakses dari object lain.

Akses Protected

Tipe ini hanya mengijinkan class member untuk diakses oleh method dalam class
tersebut dan elemen elemen subclass.

25

contoh potongan program :


public class StudentRecord
{
//akses pada variabel
protected int name;
//akses pada metode
protected String getName(){
return name;
}}

variabel name dan method getName() hanya dapat diakses oleh method internal class dan
subclass dari class StudentRecord.

Akses Private

Tipe ini mengijinkan pengaksesan class hanya dapat diakses oleh class dimana tipe
ini dibuat.

26

contoh potongan program :


public class StudentRecord
{
//akses dasar terhadap variabel
private int name;
//akses dasar terhadap metode
private String getName(){
return name;
}
}

Pada contoh diatas, variabel name dan method getName() hanya dapat diakses oleh method
internal class tersebut.
Contoh Program :
package paket.a;
public class Contoh1 {
public static void main(String[] args) {
A a = new A();
a.printString();
}
}
class A {
public String s1 = public;
protected String s2 = protected;
String s3 = default;

private String s4 = private;

void printString() {
System.out.println(this.s1);
System.out.println(this.s2);
System.out.println(this.s3);
System.out.println(this.s4);
}
}

Outputnya sebagai berikut :


public
protected
default
private

E. Pemrograman Berorientasi Objek


Pemrograman berorientasi objek (Inggris: object-oriented programming disingkat
OOP) merupakan paradigma pemrograman yang berorientasikan kepada objek. Semua data
dan fungsi di dalam paradigma ini dibungkus dalam kelas-kelas atau objek-objek.
Bandingkan dengan logika pemrograman terstruktur. Setiap objek dapat menerima pesan,
memproses data, dan mengirim pesan ke objek lainnya,

28

Model data berorientasi objek dikatakan dapat memberi fleksibilitas yang lebih, kemudahan
mengubah program, dan digunakan luas dalam teknik piranti lunak skala besar. Lebih jauh
lagi, pendukung OOP mengklaim bahwa OOP lebih mudah dipelajari bagi pemula dibanding
dengan pendekatan sebelumnya, dan pendekatan OOP lebih mudah dikembangkan dan
dirawat.

Konsep dasar

Kelas kumpulan atas definisi data dan fungsi-fungsi dalam suatu unit untuk suatu
tujuan tertentu. Sebagai contoh 'class of dog' adalah suatu unit yang terdiri atas
definisi-definisi data dan fungsi-fungsi yang menunjuk pada berbagai macam
perilaku/turunan dari anjing. Sebuah class adalah dasar dari modularitas dan struktur
dalam pemrograman berorientasi object. Sebuah class secara tipikal sebaiknya dapat
dikenali oleh seorang non-programmer sekalipun terkait dengan domain permasalahan
yang ada, dan kode yang terdapat dalam sebuah class sebaiknya (relatif) bersifat
mandiri dan independen (sebagaimana kode tersebut digunakan jika tidak
menggunakan OOP). Dengan modularitas, struktur dari sebuah program akan terkait
dengan aspek-aspek dalam masalah yang akan diselesaikan melalui program tersebut.
Cara seperti ini akan menyederhanakan pemetaan dari masalah ke sebuah program
ataupun sebaliknya.

Objek - membungkus data dan fungsi bersama menjadi suatu unit dalam sebuah
program komputer; objek merupakan dasar dari modularitas dan struktur dalam
sebuah program komputer berorientasi objek.

Abstraksi - Kemampuan sebuah program untuk melewati aspek informasi yang

29

diproses olehnya, yaitu kemampuan untuk memfokus pada inti. Setiap objek dalam
sistem melayani sebagai model dari "pelaku" abstrak yang dapat melakukan kerja,
laporan dan perubahan keadaannya, dan berkomunikasi dengan objek lainnya dalam
sistem, tanpa mengungkapkan bagaimana kelebihan ini diterapkan. Proses, fungsi atau
metode dapat juga dibuat abstrak, dan beberapa teknik digunakan untuk
mengembangkan sebuah pengabstrakan.

Enkapsulasi - Memastikan pengguna sebuah objek tidak dapat mengganti keadaan


dalam dari sebuah objek dengan cara yang tidak layak; hanya metode dalam objek
tersebut yang diberi izin untuk mengakses keadaannya. Setiap objek mengakses
interface yang menyebutkan bagaimana objek lainnya dapat berinteraksi dengannya.
Objek lainnya tidak akan mengetahui dan tergantung kepada representasi dalam objek
tersebut.

Polimorfisme melalui pengiriman pesan. Tidak bergantung kepada pemanggilan


subrutin, bahasa orientasi objek dapat mengirim pesan; metode tertentu yang
berhubungan dengan sebuah pengiriman pesan tergantung kepada objek tertentu di
mana pesa tersebut dikirim. Contohnya, bila sebuah burung menerima pesan "gerak
cepat", dia akan menggerakan sayapnya dan terbang. Bila seekor singa menerima
pesan yang sama, dia akan menggerakkan kakinya dan berlari. Keduanya menjawab
sebuah pesan yang sama, namun yang sesuai dengan kemampuan hewan tersebut. Ini
disebut polimorfisme karena sebuah variabel tungal dalam program dapat memegang
berbagai jenis objek yang berbeda selagi program berjalanpemanggilan yang sama.

30

Hal ini berlawanan dengan bahasa fungsional yang mencapai polimorfisme melalui
penggunaan fungsi kelas-pertama.

Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita
tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut (terstruktur)
tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut. Sebagai
contoh anggap kita memiliki sebuah departemen yang memiliki manager, sekretaris,
petugas administrasi data dan lainnya. Misal manager tersebut ingin memperoleh data
dari bag administrasi maka manager tersebut tidak harus mengambilnya langsung
tetapi dapat menyuruh petugas bag administrasi untuk mengambilnya. Pada kasus
tersebut seorang manager tidak harus mengetahui bagaimana cara mengambil data
tersebut tetapi manager bisa mendapatkan data tersebut melalui objek petugas
adminiistrasi. Jadi untuk menyelesaikan suatu masalah dengan kolaborasi antar objekobjek yang ada karena setiap objek memiliki deskripsi tugasnya sendiri.

31

BAB III
Hasil Percobaan / Praktikum (Modul 2 8)
-

Modul 2

Source code :
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Form;

/**
*
* @author user
*/
public class Modul_2 extends javax.swing.JFrame {

/**
* Creates new form Modul_2
*/
public Modul_2() {
initComponents();

/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

lblnpm = new javax.swing.JLabel();


lblnama = new javax.swing.JLabel();
lbljk = new javax.swing.JLabel();
lbltl = new javax.swing.JLabel();
lblalamat = new javax.swing.JLabel();
lblhobi = new javax.swing.JLabel();
txtnpm = new javax.swing.JTextField();
txtnama = new javax.swing.JTextField();
cbojk = new javax.swing.JComboBox();
jScrollPane1 = new javax.swing.JScrollPane();
txtalamat = new javax.swing.JTextArea();
txttl = new javax.swing.JTextField();
txthobi = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
btnproses = new javax.swing.JButton();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

lblnpm.setText("NPM");

lblnama.setText("NAMA");

lbljk.setText("JENIS KELAMIN");

lbltl.setText("TANGGAL LAHIR");

lblalamat.setText("ALAMAT");

lblhobi.setText("HOBI");

cbojk.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pilih", "Pria", "Wanita" }));

txtalamat.setColumns(20);
txtalamat.setRows(5);
jScrollPane1.setViewportView(txtalamat);

jLabel1.setText("BIODATA");

jLabel2.setText("NPM");

btnproses.setText("PROSES");
btnproses.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnprosesActionPerformed(evt);
}
});

jLabel3.setText("NAMA");

jLabel4.setText("JENIS KELAMIN");

jLabel5.setText("TANGGAL LAHIR");

jLabel6.setText("ALAMAT");

jLabel7.setText("HOBBI");

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());


getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jLabel1)
.addGap(189, 189, 189))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblnpm)
.addComponent(lblnama)
.addComponent(lbljk)
.addComponent(lbltl))
.addGap(32, 32, 32)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(txtnpm)
.addComponent(txtnama)
.addComponent(cbojk, 0, 118, Short.MAX_VALUE)
.addComponent(txttl,

javax.swing.GroupLayout.PREFERRED_SIZE,

110,

javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblalamat)
.addComponent(lblhobi))
.addGap(68, 68, 68)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txthobi,

javax.swing.GroupLayout.PREFERRED_SIZE,

136,

javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jScrollPane1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGap(119, 119, 119)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel4)
.addComponent(jLabel5)
.addComponent(jLabel7)))
.addGroup(layout.createSequentialGroup()
.addGap(219, 219, 219)
.addComponent(btnproses)))
.addContainerGap(290, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(13, 13, 13)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblnpm)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtnpm,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2)))
.addGap(27, 27, 27)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblnama)
.addComponent(txtnama,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel3))
.addGap(29, 29, 29)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lbljk)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(cbojk,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel4)))
.addGap(32, 32, 32)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lbltl)
.addComponent(txttl,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5))
.addGap(27, 27, 27)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblalamat)
.addComponent(jScrollPane1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel6))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,

35,

Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txthobi,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7)))
.addGroup(layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(lblhobi)))
.addGap(24, 24, 24)
.addComponent(btnproses)
.addGap(7, 7, 7))
);

pack();
}// </editor-fold>

private void btnprosesActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
lblnpm.setText(txtnpm.getText());
lblnama.setText(txtnama.getText());
lbljk.setText((String)cbojk.getSelectedItem());

lblalamat.setText(txtalamat.getText());
lblhobi.setText(txthobi.getText());
txtnpm.setText("");
txtnama.setText("");
txttl.setText("");
txthobi.setText("");
txtalamat.setText("");
cbojk.setSelectedItem("Pilih");
;

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Modul_2.class.getName()).log(java.util.logging.Level.SEVERE,

null,

ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Modul_2.class.getName()).log(java.util.logging.Level.SEVERE,

null,

ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Modul_2.class.getName()).log(java.util.logging.Level.SEVERE,

null,

ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Modul_2.class.getName()).log(java.util.logging.Level.SEVERE,
ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Modul_2().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btnproses;
private javax.swing.JComboBox cbojk;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JLabel lblalamat;
private javax.swing.JLabel lblhobi;
private javax.swing.JLabel lbljk;
private javax.swing.JLabel lblnama;
private javax.swing.JLabel lblnpm;
private javax.swing.JLabel lbltl;
private javax.swing.JTextArea txtalamat;
private javax.swing.JTextField txthobi;
private javax.swing.JTextField txtnama;
private javax.swing.JTextField txtnpm;
private javax.swing.JTextField txttl;
// End of variables declaration

null,

Outputnya

40

Modul 3

Source Code :

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Form;

/**

* @author user

*/

public class Modul_3 extends javax.swing.JFrame {

/**

* Creates new form Modul_3

*/

public Modul_3() {

initComponents();

/**

* This method is called from within the constructor to initialize the form.

* WARNING: Do NOT modify this code. The content of this method is always

* regenerated by the Form Editor.

*/

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

jLabel1 = new javax.swing.JLabel();

jLabel2 = new javax.swing.JLabel();

jLabel3 = new javax.swing.JLabel();

txtinput1 = new javax.swing.JTextField();

txtinput2 = new javax.swing.JTextField();

txthasil = new javax.swing.JTextField();

btntambah = new javax.swing.JButton();

btnkurang = new javax.swing.JButton();

btnkali = new javax.swing.JButton();

btnbagi = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jLabel1.setText("INPUT NILAI PERTAMA");

jLabel2.setText("INPUT NILAI KEDUA");

jLabel3.setText("HASIL");

btntambah.setText("+");

btntambah.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

btntambahActionPerformed(evt);

});

btnkurang.setText("-");

btnkurang.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

btnkurangActionPerformed(evt);

});

btnkali.setText("X");

btnkali.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

btnkaliActionPerformed(evt);

});

btnbagi.setText("/");

btnbagi.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

btnbagiActionPerformed(evt);

});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addContainerGap()

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel1)

.addComponent(jLabel3)

.addComponent(jLabel2))

.addGap(36, 36, 36)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)

.addComponent(txthasil, javax.swing.GroupLayout.DEFAULT_SIZE, 178, Short.MAX_VALUE)

.addComponent(txtinput1)

.addComponent(txtinput2))

.addGap(83, 83, 83)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)

.addComponent(btnbagi,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addComponent(btnkali,
Short.MAX_VALUE)

.addComponent(btnkurang,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

Short.MAX_VALUE)

.addComponent(btntambah,
javax.swing.GroupLayout.PREFERRED_SIZE))

.addContainerGap(63, Short.MAX_VALUE))

javax.swing.GroupLayout.PREFERRED_SIZE,

42,

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(layout.createSequentialGroup()

.addGap(18, 18, 18)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel1)

.addComponent(txtinput1,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(btntambah))

.addGap(28, 28, 28)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel2)

.addComponent(txtinput2,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(btnkurang))

.addGap(31, 31, 31)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel3)

.addComponent(txthasil,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(btnkali))

javax.swing.GroupLayout.DEFAULT_SIZE,

.addGap(33, 33, 33)

.addComponent(btnbagi)

.addContainerGap(74, Short.MAX_VALUE))

);

pack();

}// </editor-fold>

private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 =Integer.valueOf(txtinput1.getText());

Integer nilai2 =Integer.valueOf(txtinput2.getText());

Integer hasil3=nilai1+nilai2;

String hasil=String.valueOf(hasil3);

txthasil.setText(hasil);

private void btnkurangActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 =Integer.valueOf(txtinput1.getText());

Integer nilai2 =Integer.valueOf(txtinput2.getText());

Integer hasil3=nilai1-nilai2;

String hasil=String.valueOf(hasil3);

txthasil.setText(hasil);

private void btnkaliActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 =Integer.valueOf(txtinput1.getText());

Integer nilai2 =Integer.valueOf(txtinput2.getText());

Integer hasil3=nilai1*nilai2;

String hasil=String.valueOf(hasil3);

txthasil.setText(hasil);

private void btnbagiActionPerformed(java.awt.event.ActionEvent evt) {

// TODO add your handling code here:

Integer nilai1 =Integer.valueOf(txtinput1.getText());

Integer nilai2 =Integer.valueOf(txtinput2.getText());

Integer hasil3=nilai1/nilai2;

String hasil=String.valueOf(hasil3);

txthasil.setText(hasil);

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(Modul_3.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(Modul_3.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(Modul_3.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(Modul_3.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new Modul_3().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton btnbagi;

private javax.swing.JButton btnkali;

private javax.swing.JButton btnkurang;

private javax.swing.JButton btntambah;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JTextField txthasil;

private javax.swing.JTextField txtinput1;

private javax.swing.JTextField txtinput2;

// End of variables declaration

Output :

52

Modul 4

Source Code :
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Form;

/**
*
* @author user
*/
public class Modul_4 extends javax.swing.JFrame {

/**
* Creates new form Modul_4
*/
public Modul_4() {
initComponents();
}

/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jLabel1 = new javax.swing.JLabel();


jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
cbostatus = new javax.swing.JComboBox();
cbojenis = new javax.swing.JComboBox();
txtharga = new javax.swing.JTextField();
txtnama = new javax.swing.JTextField();
txtjumlah = new javax.swing.JTextField();
btnbayar = new javax.swing.JButton();
txtdiskon = new javax.swing.JTextField();
txttotal = new javax.swing.JTextField();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jLabel1.setText("nama pembeli");

jLabel2.setText("status");

jLabel3.setText("jenis barang");

jLabel4.setText("harga");

jLabel5.setText("jumlah");

jLabel6.setText("diskon");

jLabel7.setText("total bayar");

jLabel8.setText("keterangan:member diskon 5%");

cbostatus.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "umum", "member" }));

cbojenis.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "pilih", "ipad", "iphone", "ipod" }));


cbojenis.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
cbojenisActionPerformed(evt);
}
});

btnbayar.setText("bayar");
btnbayar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnbayarActionPerformed(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());


getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jLabel8)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6)
.addComponent(jLabel7))
.addGap(157, 157, 157)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(txttotal, javax.swing.GroupLayout.DEFAULT_SIZE, 146, Short.MAX_VALUE)
.addComponent(txtdiskon)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(btnbayar)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel4)
.addComponent(jLabel5))
.addGap(143, 143, 143))
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(cbostatus, 0, 121, Short.MAX_VALUE)
.addComponent(cbojenis, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtharga, javax.swing.GroupLayout.DEFAULT_SIZE, 151, Short.MAX_VALUE)
.addComponent(txtnama)
.addComponent(txtjumlah)))))
.addContainerGap(153, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(27, 27, 27)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(txtnama,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel1))
.addGap(25, 25, 25)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(cbostatus,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(26, 26, 26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel3)
.addComponent(cbojenis,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(26, 26, 26)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel4)
.addComponent(txtharga,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(40, 40, 40)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtjumlah,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel5))
.addGap(18, 18, 18)
.addComponent(btnbayar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 26, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel6)
.addComponent(txtdiskon,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.DEFAULT_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(22, 22, 22)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel7)
.addComponent(txttotal,

javax.swing.GroupLayout.PREFERRED_SIZE,

javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(28, 28, 28)
.addComponent(jLabel8)
.addGap(24, 24, 24))

javax.swing.GroupLayout.DEFAULT_SIZE,

);

pack();
}// </editor-fold>

private void cbojenisActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
if(cbojenis.getSelectedItem()=="ipad"){
txtharga.setText("499000");
}else if(cbojenis.getSelectedItem()=="iphone"){
txtharga.setText("7999000");
}else if(cbojenis.getSelectedItem()=="ipad"){
txtharga.setText("2999000");
}else{
txtharga.setText("");

}
}

private void btnbayarActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
int harga=Integer.parseInt(txtharga.getText());
int jumlah=Integer.parseInt(txtjumlah.getText());
double diskon,total,nilaidiskon;
if(cbostatus.getSelectedItem()=="member"){
diskon=0.5*harga;
nilaidiskon=harga-diskon;
total=nilaidiskon*jumlah;

}else{
diskon=0;
nilaidiskon=harga-diskon;
total=nilaidiskon*jumlah;
}
txtdiskon.setText(""+diskon);

txttotal.setText(""+total);

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Modul_4.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Modul_4.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Modul_4.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Modul_4.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}
//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Modul_4().setVisible(true);
}
});

}
// Variables declaration - do not modify
private javax.swing.JButton btnbayar;
private javax.swing.JComboBox cbojenis;
private javax.swing.JComboBox cbostatus;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JTextField txtdiskon;
private javax.swing.JTextField txtharga;
private javax.swing.JTextField txtjumlah;
private javax.swing.JTextField txtnama;
private javax.swing.JTextField txttotal;
// End of variables declaration
}

60

Output

61

Modul 5

Source Code
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Form;

/**
*
* @author user
*/
public class Modul_5 extends javax.swing.JFrame {
int gajipokok,gajikotor,pajak,gajibersih;
int tunjanganistri,tunjangananak,jumlahanak;
String t_istri,t_anak;
String gajikotor_1,pajak_1,gajibersih_1;

private void

Gaji(){

int pilihan=cmbjabatan.getSelectedIndex();
switch(pilihan){
case 0:
txtgajipokok.setText("7500000");
break;
case 1:
txtgajipokok.setText("5000000");
break;
case 2:
txtgajipokok.setText("3000000");
break;
case 3:
txtgajipokok.setText("2000000");
break;
case 4:
txtgajipokok.setText("1200000");
break;
case 5:
txtgajipokok.setText("750000");
break;
}

}
private void Tunjangananak(){
gajipokok = Integer.valueOf(txtgajipokok.getText());
jumlahanak = Integer.valueOf(txtjumlahanak.getText());
if(jumlahanak <= 2){
tunjangananak = ((15*gajipokok)/100)*jumlahanak;
}else if(jumlahanak > 2){
tunjangananak = ((15*gajipokok)/100)*2;
}else{
tunjangananak = 0;
}
t_anak = String.valueOf(tunjangananak);
txttunjangananak.setText(t_anak);

private void Menikah(){


txttunjanganistri.setEnabled(true);
txttunjangananak.setEnabled(true);
txtjumlahanak.setEnabled(true);
gajipokok = Integer.valueOf(txtgajipokok.getText());
tunjanganistri = (20*gajipokok)/100;
t_istri = String.valueOf(tunjanganistri);
txttunjanganistri.setText(t_istri);
TunjanganAnak();
}

private void BelumMenikah(){


tunjanganistri = 0;
tunjangananak = 0;
jumlahanak = 0;
txttunjanganistri.setText("0");
txttunjangananak.setText("0");
txtjumlahanak.setText("0");
txttunjanganistri.setEnabled(false);
txttunjangananak.setEnabled(false);
txtjumlahanak.setEnabled(false);
}

private void Total(){


gajipokok = Integer.valueOf(txtgajipokok.getText());
if (opsi1.isSelected()==true){
gajikotor = gajipokok + tunjangananak + tunjanganistri;
}else{
gajikotor = gajipokok;
}
pajak = (gajikotor*10)/100;
gajibersih = (gajikotor-pajak);
gajikotor_1 = String.valueOf(gajikotor);
pajak_1 = String.valueOf(pajak);
gajibersih_1 = String.valueOf(gajibersih);

txtgajikotor.setText(gajikotor_1);
txtpajak.setText(pajak_1);
txtgajibersih.setText(gajibersih_1);
}

private void BersihTeks(){


gajipokok=0;
gajikotor=0;
pajak=0;
gajibersih=0;
tunjanganistri=0;
tunjangananak=0;
jumlahanak=0;
txtgajipokok.setText("0");
txttunjanganistri.setText("0");
txtjumlahanak.setText("0");
txttunjangananak.setText("0");
txtgajikotor.setText("0");
txtpajak.setText("0");
txtgajibersih.setText("0");

/**
* Creates new form Modul_5
*/

public Modul_5() {
initComponents();
}

/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">


private void initComponents() {

buttonGroup1 = new javax.swing.ButtonGroup();


jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jLabel4 = new javax.swing.JLabel();
jLabel5 = new javax.swing.JLabel();
jLabel6 = new javax.swing.JLabel();
txtnip = new javax.swing.JTextField();
txtnama = new javax.swing.JTextField();
opsi1 = new javax.swing.JRadioButton();
opsi2 = new javax.swing.JRadioButton();
txtjumlahanak = new javax.swing.JTextField();
jLabel7 = new javax.swing.JLabel();
jLabel8 = new javax.swing.JLabel();
jLabel9 = new javax.swing.JLabel();
jLabel10 = new javax.swing.JLabel();
jLabel11 = new javax.swing.JLabel();
btnhitung = new javax.swing.JButton();
jLabel12 = new javax.swing.JLabel();
txtgajipokok = new javax.swing.JTextField();
txttunjanganistri = new javax.swing.JTextField();
txttunjangananak = new javax.swing.JTextField();
txtgajikotor = new javax.swing.JTextField();
txtpajak = new javax.swing.JTextField();
txtgajibersih = new javax.swing.JTextField();
btnbersih = new javax.swing.JButton();
cmbjabatan = new javax.swing.JComboBox();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
addWindowListener(new java.awt.event.WindowAdapter() {
public void windowOpened(java.awt.event.WindowEvent evt) {
formWindowOpened(evt);
}
});

jLabel1.setText("PERHITUNGAN GAJI PEGAWAI");

jLabel2.setText("NIP");

jLabel3.setText("NAMA");

jLabel4.setText("JABATAN");

jLabel5.setText("STATUS");

jLabel6.setText("JUMLAH ANAK");

buttonGroup1.add(opsi1);
opsi1.setText("MENIKAH\n");
opsi1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
opsi1ActionPerformed(evt);
}
});

buttonGroup1.add(opsi2);
opsi2.setText("BELUM MENIKAH");
opsi2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
opsi2ActionPerformed(evt);
}
});

txtjumlahanak.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyReleased(java.awt.event.KeyEvent evt) {
txtjumlahanakKeyReleased(evt);
}
});

jLabel7.setText("GAJI POKOK");

jLabel8.setText("TUNJANGAN ISTRI(20% DARI GAJI)");

jLabel9.setText("TUNJANGAN ANAK (15% DARI GAJI)");

jLabel10.setText("GAJI KOTOR");

jLabel11.setText("PAJAK 10% DARI GAJI");

btnhitung.setText("HITUNG");

jLabel12.setText("GAJI BERSIH");

btnbersih.setText("CLEAR");

cmbjabatan.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Direktur", "Manager", "Kabag", "Sekretaris",


"Karyawan", "Office Boy" }));
cmbjabatan.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
cmbjabatanItemStateChanged(evt);
}
});

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());


getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3)
.addComponent(jLabel4)
.addComponent(jLabel5)
.addComponent(jLabel6))
.addGap(126, 126, 126)

.addComponent(jLabel1))
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap()
.addComponent(btnbersih)
.addGap(52, 52, 52))
.addGroup(layout.createSequentialGroup()
.addGap(128, 128, 128)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(txtnip, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txtnama, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(opsi1, javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addComponent(txtjumlahanak, javax.swing.GroupLayout.PREFERRED_SIZE, 73,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(opsi2)
.addComponent(cmbjabatan, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(48, 48, 48)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel11)
.addComponent(jLabel12))
.addGap(89, 89, 89)
.addComponent(txtpajak))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel8)
.addComponent(jLabel7))
.addGap(31, 31, 31)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(txttunjanganistri, javax.swing.GroupLayout.DEFAULT_SIZE, 144, Short.MAX_VALUE)

.addComponent(txtgajipokok)))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel10)
.addComponent(jLabel9))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(22, 22, 22)
.addComponent(txtgajikotor))
.addGroup(layout.createSequentialGroup()
.addGap(28, 28, 28)
.addComponent(txttunjangananak))
.addGroup(layout.createSequentialGroup()
.addGap(22, 22, 22)
.addComponent(txtgajibersih))))))
.addGroup(layout.createSequentialGroup()
.addGap(136, 136, 136)
.addComponent(btnhitung)))))
.addGap(16, 16, 16))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(txtnip, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel7)
.addComponent(txtgajipokok, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(txtnama, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addGap(21, 21, 21)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel8)
.addComponent(txttunjanganistri, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel4)
.addComponent(cmbjabatan, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(27, 27, 27))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel9)
.addComponent(txttunjangananak, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(21, 21, 21)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(opsi1)
.addComponent(btnhitung))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(opsi2)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel10)
.addComponent(txtgajikotor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGap(29, 29, 29)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)

.addComponent(jLabel6)
.addComponent(txtjumlahanak, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel11)
.addComponent(txtpajak, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel12)
.addComponent(txtgajibersih, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnbersih))
.addContainerGap(31, Short.MAX_VALUE))
);

pack();
}// </editor-fold>

private void formWindowOpened(java.awt.event.WindowEvent evt) {


// TODO add your handling code here:
BelumMenikah();
}

private void cmbjabatanItemStateChanged(java.awt.event.ItemEvent evt) {


// TODO add your handling code here:
BersihTeks();
Gaji();
if(opsi1.isSelected()==true){
Menikah();
}else{
BelumMenikah();
}
}

private void opsi1ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
Menikah();

private void opsi2ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
BelumMenikah();
}

private void txtjumlahanakKeyReleased(java.awt.event.KeyEvent evt) {


// TODO add your handling code here:
Tunjangananak();
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(Modul_5.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(Modul_5.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(Modul_5.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(Modul_5.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}

//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Modul_5().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton btnbersih;
private javax.swing.JButton btnhitung;
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.JComboBox cmbjabatan;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel10;
private javax.swing.JLabel jLabel11;
private javax.swing.JLabel jLabel12;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLabel4;
private javax.swing.JLabel jLabel5;
private javax.swing.JLabel jLabel6;
private javax.swing.JLabel jLabel7;
private javax.swing.JLabel jLabel8;
private javax.swing.JLabel jLabel9;
private javax.swing.JRadioButton opsi1;
private javax.swing.JRadioButton opsi2;
private javax.swing.JTextField txtgajibersih;
private javax.swing.JTextField txtgajikotor;
private javax.swing.JTextField txtgajipokok;
private javax.swing.JTextField txtjumlahanak;
private javax.swing.JTextField txtnama;
private javax.swing.JTextField txtnip;
private javax.swing.JTextField txtpajak;
private javax.swing.JTextField txttunjangananak;
private javax.swing.JTextField txttunjanganistri;

// End of variables declaration

private void TunjanganAnak() {


throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}

Output

75

Modul 6

Source Code
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package MDI;

import java.awt.Dimension;
import javax.swing.JInternalFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

/**
*
* @author user
*/
public class FormUtama extends javax.swing.JFrame {
private int jml;
private String judul;
/**
* Creates new form FormUtama
*/
public FormUtama() {
setTitle("MDI form");
setExtendedState(MAXIMIZED_BOTH);
initComponents();
}

private void FormBaru(){


try{
JInternalFrame jin = new JInternalFrame(judul,false,true,true);
jin.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
JPanel pn = new JPanel();
jin.setBounds(10, 10, 500, 500);

jDesktopPane1.add(jin);
jin.setVisible(true);
}catch (Exception e){
JOptionPane.showMessageDialog(null, e);
}
}

/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jDesktopPane1 = new javax.swing.JDesktopPane();


jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenuItem2 = new javax.swing.JMenuItem();
jMenu2 = new javax.swing.JMenu();
modul2 = new javax.swing.JMenuItem();
modul3 = new javax.swing.JMenuItem();
modul4 = new javax.swing.JMenuItem();
modul5 = new javax.swing.JMenuItem();
jMenu3 = new javax.swing.JMenu();
jMenuItem7 = new javax.swing.JMenuItem();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jDesktopPane1.setBackground(new java.awt.Color(255, 51, 51));


jDesktopPane1.setForeground(new java.awt.Color(255, 51, 51));

jMenu1.setText("File");

jMenuItem1.setText("New");

jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);

jMenuItem2.setText("Keluar");
jMenu1.add(jMenuItem2);

jMenuBar1.add(jMenu1);

jMenu2.setText("Edit");

modul2.setText("Modul_2");
modul2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
modul2ActionPerformed(evt);
}
});
jMenu2.add(modul2);

modul3.setText("Modul_3");
modul3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
modul3ActionPerformed(evt);
}
});
jMenu2.add(modul3);

modul4.setText("Modul_4");
modul4.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
modul4ActionPerformed(evt);
}
});
jMenu2.add(modul4);

modul5.setText("Modul_5");
modul5.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
modul5ActionPerformed(evt);
}
});
jMenu2.add(modul5);

jMenuBar1.add(jMenu2);

jMenu3.setText("Help");

jMenuItem7.setText("Tentang");
jMenu3.add(jMenuItem7);

jMenuBar1.add(jMenu3);

setJMenuBar(jMenuBar1);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());


getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jDesktopPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 573, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jDesktopPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 409, Short.MAX_VALUE)
);

pack();
}// </editor-fold>

private void modul3ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
IFModul3 form3 = new IFModul3();

jDesktopPane1.add(form3);
Dimension parentSize = jDesktopPane1.getSize();
Dimension childSize = form3.getSize();
form3.setLocation((parentSize.width - childSize.width)/2,
(parentSize.height - childSize.height)/2);
form3.setVisible(true);

private void modul4ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
IFModul4 form4 = new IFModul4();
jDesktopPane1.add(form4);
Dimension parentSize = jDesktopPane1.getSize();
Dimension childSize = form4.getSize();
form4.setLocation((parentSize.width - childSize.width)/2,
(parentSize.height - childSize.height)/2);
form4.setVisible(true);
}

private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
jml = jml+1;
judul = "Form Baru"+jml;
FormBaru();
}

private void modul2ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
IFModul2 form2 = new IFModul2();
jDesktopPane1.add(form2);
Dimension parentSize = jDesktopPane1.getSize();
Dimension childSize = form2.getSize();
form2.setLocation((parentSize.width - childSize.width)/2,
(parentSize.height - childSize.height)/2);
form2.setVisible(true);
}

private void modul5ActionPerformed(java.awt.event.ActionEvent evt) {


// TODO add your handling code here:
IFModul5 form5 = new IFModul5();
jDesktopPane1.add(form5);
Dimension parentSize = jDesktopPane1.getSize();
Dimension childSize = form5.getSize();
form5.setLocation((parentSize.width - childSize.width)/2,
(parentSize.height - childSize.height)/2);
form5.setVisible(true);
}

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
/* Set the Nimbus look and feel */
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
* For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
*/
try {
for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (InstantiationException ex) {
java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (IllegalAccessException ex) {
java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
} catch (javax.swing.UnsupportedLookAndFeelException ex) {
java.util.logging.Logger.getLogger(FormUtama.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
}

//</editor-fold>

/* Create and display the form */


java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new FormUtama().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JDesktopPane jDesktopPane1;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenu jMenu2;
private javax.swing.JMenu jMenu3;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JMenuItem jMenuItem2;
private javax.swing.JMenuItem jMenuItem7;
private javax.swing.JMenuItem modul2;
private javax.swing.JMenuItem modul3;
private javax.swing.JMenuItem modul4;
private javax.swing.JMenuItem modul5;
// End of variables declaration
}

82

Output

83

Modul 7
Source Code :

84

85

86

Output :

87

Analisa Modul 8
Terlebih dahulu buat databasenya .

88

89

90

91

Output :

91

BAB IV
Analisa Hasil Percobaan (Modul 2 8)

Analisa Modul 2

Analisanya :
Memproses untuk data selanjutnya,jika di input NPM,Nama,Jenis Kelamin,Tanggal
Lahir,Alamat,dan Hobi.

92

Analisa Modul 3

Analisanya :
Program untuk mencari hasil dengan menginput nilai pertama dan menginput nilai kedua
sesuai yang kita inginkan,misalnya tambah,kurang,bagi dan kali.

93

Analisa Modul 4

Analisanya :
Memasukkan data pembeli lalu menginput jenis barang dan tampilannya tetera ,lalu jika
statusnya member maka mendapat potongan 5 % dan muncul diskon lalu total bayarnya .

94

Analisa Modul 5

Analisanya :
Pada perhitungan table pegawai input Nip,Nama,Pilih Jabatan Lalu masukkan jumlah
anak,Lalu muncul Berapa gaji pokok,tunjangan dll.

95

Analisa Modul 6

Analisanya
Menampilkam aplikasi MDI (Multiple document Interface ) aplikasi yang bisa menampilkan
beberapa dokumen sekaligus ,seperti modul 2, modul 3,modul 4,modul 5.

96

Analisa Modul 7

Analisanya
Membuat Form Input Data dan Koneksi dengan Database MySQL

97

Analisa Modul 8

Analisanya
Membuat program input data transaksi dari Java dan Netbeans dan menggunakan database
MySQL,terlebih dahulu buatlah databasenya setelah itu di hubungkan dengan Netbeans.

98

Penutup
Kesimpulan :
Selama saya belajar Bahasa Pemrograman Java ,banyak sekali yang saya
dapat,terutama tentang Bahasa Pemrograman Java.

Java adalah bahasa pemrograman yang berorientasi objek (OOP) dan dapat
dijalankan pada berbagai platform sistem operasi. Perkembangan Java tidak hanya terfokus
pada satu sistem operasi, tetapi dikembangkan untuk berbagai sistem operasi dan bersifat
open source. Java berasal dari pengembangan bahasa C++ sehingga strukturnya seperti
bahasa C++.

Saran :
Dari perkembangan teknologi saat ini ,teknologi sudah banyak yang canggih,di mata
kuliah Bahasa pemrograman java harus detail untuk mempelajari sebuah program yang ingin
di buat .kalau bisa sistem belajar yang ibu dosen terapkan harus diterapkan sekian dan terima
kasih .

99

Daftar Pustaka

http://mrewaja.wordpress.com/2013/09/19/pengertian-netbeans/

http://d3n18.files.wordpress.com/2010/10/oop_bab_02.pdf

http://hendrawaskitha.blogspot.com/2012/10/operator-dalam-java.html

http://biebah-site34.blogspot.com/2013/05/pengertian-class-method-constructor.html

http://muhammadarga.blogspot.com/2013/10/percabangan-dan-perulanganpemrograman.html

http://id.wikipedia.org/wiki/Pemrograman_berorientasi_objek

Anda mungkin juga menyukai