Anda di halaman 1dari 80

LAPORAN PRAKTIKUM

BAHASA PEMROGRAMAN JAVA

NAMA
NPM
PRAKTIKAN MAHASISWA
MAYA
MEILITA

1314370284

NAMA
PENILAI

TANGGAL
KUMPUL

Kelas
TI 5 Siang A

TANDA
TANGAN
PRAKTIKAN

12
DESEMBER
2015

TANGGAL
KOREKSI

NILAI

TANDA
TANGAN
DOSEN

INDRI
SULISTIANINGSIH,
S.KOM

UNIVERSITAS PEMBANGUNAN PANCA BUDI


FAKULTAS ILMU KOMPUTER
PRODI SISTEM KOMPUTER
MEDAN
2015
1|Page

KATA PENGANTAR
Puji syukur saya panjatkan kehadirat ALLAH karena berkat rahmatnya
penyusunan Laporan Praktikum Bahasa Pemrograman Java dapat diselesaikan
dengan tepat waktu tanpa ada halangan.
Materi yang saya susun dalam laporan ini adalah pengenalaan, percobaan dan
analisa java yang saya susun dengan sistematika yang baik dan jelas serta di tulis
dengan bahasa yang mudah dimengerti.
Laporan disusun berdasarkan kebutuhan mahasiswa. Dengan demikian, materi
yang dibahas dalam laporan ini sudah sesuai dengan kebutuhan mahasiswa dalam
ilmu teknologi yang mudah dimengerti dan dipahami. Dengan menggunakan laporan
ini diharapkan seorang mahasiswa akan mudah dalam mempelajari.
Semoga laporan ini bermanfaat bagi masyarakat untuk pengembangan
wawasan dan peningkatan ilmu pengetaguan bagi masyarakat.
Akhir kata, saya menyadari laporan ini tidak lepas dari kekurangan.
Sekian terima kasih.

Medan, 7 Desember 2015

MAYA MEILITA

2|Page

DAFTAR ISI
KATA PENGANTAR................................................................................................ 2
DAFTAR ISI.............................................................................................................. 3
BAB I PENDAHULUAN........................................................................................... 5
1.1 Latar Belakang.......................................................................................... 5
1.2 Tujuan Praktikum..................................................................................... 6
1.3 Manfaat Praktikum............................................................................... 7
BAB II LANDASAN TEORI..................................................................................... 8
2.1 Pernyataan dan Ekspresi......................................................................................... 8
2.1.1 Pernyataan................................................................................................ 8
2.1.2 Ekspresi................................................................................................... 8
2.2 Variabel, Tipe Data dan Literal............................................................................. 9
2.2.1 Variabel.................................................................................................. 9
2.2.2 Tipe Data............................................................................................... 9
2.2.3 Literal..................................................................................................... 10
2.3 Array..................................................................................................................... 10
2.4 Operator................................................................................................................ 10
2.5 Operasi I/O Sistem Sederhana.............................................................................. 12
2.6 Pengaturan Format Output Numerik.................................................................... 12
2.7 Konversi String dan Bilangan (Number).............................................................. 16
2.8 Pernyataan Penentu Keputusan............................................................................. 17
2.9 Pernyataan Pengulangan Proses........................................................................... 20

3|Page

2.10 Pernyataan Pemindah Proses............................................................................ 23


BAB III PERCOBAAN PRAKTIKUM.................

26

3.1 Modul 2 - Ruang Lingkup Pemrograman Java.................

26

3.2 Modul 3 - Mengidentfikasi Dasar-dasar Program Java ..................

30

3.3 Modul 4 - Struktur Kondisi........

33

3.4 Modul 5 - Struktur Kondisi (Lanjutan).....

37

3.5 Modul 6 - MDI(Multi Document Interface)........

46

3.6 Modul 7 - Form Input Data........

54

3.7 Modul 8 - Form Input Data(Lanjutan)....... 61


BAB IV ANALISA HASIL PERCOBAAN.... 73
4.1 Analisa Modul 2 - Ruang Lingkup Pemrograman Java...... 73
4.2 Analisa Modul 3 - Mengidentfikasi Dasar-dasar Program Java....... 73
4.3 Analisa Modul 4 - Struktur Kondisi............ 75
4.4 Analisa Modul 5 - Struktur Kondisi (Lanjutan)....... 76
4.5 Analisa Modul 6 - MDI(Multi Document Interface)....

76

4.6 Analisa Modul 7 - Form Input Data.....

77

4.7 Analisa Modul 8 - Form Input Data(Lanjutan).....

77

BAB V PENUTUP.. 78
Kesimpulan .............. 78
Saran .... 79
DAFTAR PUSTAKA....... 80

4|Page

BAB I
PENDAHULUAN

1.1 Latar Belakang


Java adalah bahasa pemograman yang berorientasi objek (OOP) dan dapat
dijalankan pada berbagai platform system operasi. Perkembangan java tidak hanya
terfokus pada satu system operasi, tetapi dikembangkan untuk berbagi system operasi
dan bersifat open source. Java berasal dari pengembangan bahasa c++ sehingga
strukturnya seperti c++.
Java sering digunakan oleh semua segmen karena mampu meraba seluruh hal,
dari pemrograman dekstop hingga pemrograman mobile (Mobile Programming) dan
java juga terkenal mudah digunakan, karena seluruh system operasi dapat
menjalankan java. Sistem operasi itu antara lain window, linux, DOS, Unix, dan lain
lain sehingga banyak pengguna pemakaian.
Java telah berkembang semula diciptakan untuk pemrograman (applet,
program computer yang telah dikompilasi menjadi bytecode,yaitu suatu keadan
program yang dapat eksekusi langsung ; tambahan didalam suatu homepage selain
gambar) yang berjalan di web browser menjadi bahasa pemrograman yang terkenal
untuk pengembangan berbagi aplikasi computer yang berjalan di beragam perangkat
mulai handled devices seperti handphone, PDA(Personal Digital Assistant) sampai
aplikai khusus yang tersebar diberbagi macam computer server.

5|Page

Bahasa java merupakan bahasa sederhana, hanya terdiri beberapa struktur


yang tetap sering disebut sebagai bahasa c++ yang kurang, karena susunannya yang
lebih kecil dibandingkan bahasa c++. Namun Karena diatur secara baik, bahasa java
itu mudah diperluaskan 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.

1.2 Tujuan Praktikum


Sebagai syarat menyelesaikan mata kuliah Bahasa Pemograman Java.
Sebagai bahan pembelajaran mengenai Bahasa Pemograman Java.
Dapat memahami, mengerti dan mendalami yang meliputi :
1). Sekilas tentang bahasa pemograman Java
2.) Sejarah Bahasa Pemograman Java
4). Cara Kerja Java, secara umum
5). Java sebagai suatu Platform
6). Karakteristik Bahasa Pemograman Java
7). Pengenalan IDE Netbeans
8). Instalasi, Compile, dan Run File Java diComand Promt dan membuat project
sederhana.

6|Page

1.3 Manfaat Praktikum

Memperdalam pengetahuan tentang bahasa pemrograman java

Melatih skill menuju dunia kerja

Membiasakan menggunakan program dalam kehidupan sehari-hari dan


membuatnya dengan bahasa pemrogramana java

7|Page

BAB II
LANDASAN TEORI

2.1 Pernyataan dan Ekspresi


2.1.1 Pernyataan

Perintah yang menyebabkan sesuatu terjadi dan merepresentasikan suatu aksi


tunggal dalam program Java. Contoh: int TahunProduksi;

Setiap pernyataan ditutup oleh karakter semicolon (;)

Pernyataan dikelompokkan dengan tanda pembuka ({) dan penutup (}).


Kelompok ini disebut blok atau blok pernyataan

2.1.2 Ekspresi

Pernyataan yang dapat menghasilkan suatu nilai. Nilai yang dihasilkan oleh
pernyataan ini yang disebut dengan nilai balik (return value)

Nilai balik bisa berupa bilangan, boolean, atau objek

Method tanpa nilai balik biasanya menggunakan keyword void

Contoh: hasilBagi = x/ y;

8|Page

2.2

Variabel, Tipe Data dan Literal

2.2.1 Variabel

Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu


informasi (nilai)

Nilai variabel dapat diubah di pernyataan manapun di dalam program

Mendeklarasikan variabel:
tipe namaVariabel1 [, namaVariabel2]

Contoh:
int hasilKali;
String namaSiswa, namaGuru, namaAdmin;

2.2.2 Tipe Data


1.

Tipe Data Primitif

Tipe data yang merupakan kata kunci di Java (tertanam di compiler Java),
sehingga pemrosesan jauh lebih cepat

Menggunakan huruf kecil (lowercase)

Contoh: int, double, byte, short, long, float, char, boolean.


2.

Tipe Data Reference (Class)

Tipe data berupa class yang ada di library Java (java.lang)

Menggunakan huruf capital

Contoh: String, Integer, Double

9|Page

2.2.3 Literal
Penulisan besaran untuk variabel adalah penting, literal Java terdiri dari angka,
karakter, dan string. Angka terdiri dari bilangan bulat (integer), bilangan
mengambang (floating point), dan boolean. Nilai boolean untuk true dan false
direpresentasikan sebagai 1 dan 0.

2.3 Array
Suatu array adalah sebuah struktur data yang terdiri atas banyak variabel
dengan tipe data sama, dimana masing-masing elemen variabel mempunyai nilai
indeks. Setiap elemen array mampu untuk menyimpan satu jenis data (yaitu:
variabel). Suatu array dinyatakan dengan type, sehingga variabel yang bekerja akan
dinyatakan dengan: Contoh
type : Var A = array [1..10] of integer;

2.4 Operator
Operator Java merupakan karakter khusus yang berupa simbol atau tanda
yang
memerintahkan compiler untuk melakukan berbagai operasi terhadap sejumlah
operand. Perintah operasi dispesifikasikan oleh operator, dimana operand-nya adalah
variabel, pernyataan, atau besaran literal.
Operator yang dibahas pada bagian ini adalah operator aritmatika, increment
dan decrement, assignment (penugasan), relasi, logical, dan bitwise.
10 | P a g e

a.

Operator Aritmatika

Sama halnya dengan semua bahasa pemrograman, Java menyediakan operatoroperator aritmatika untuk manipulasi variabel data numerik.
b. Operator Increment dan Decrement
Operator Increment dan Decrement digunakan untuk menaikan atau menurunkan
suatu nilai integer (bilangan bulat) sebanyak satu satuan, dan hanya dapat digunakan
pada variabel. Ada dua versi operator increment maupun decrement, yaitu prefix dan
postfix. Prefix berarti operator digunakan sebelum variabel atau ekspresi, dan postfix
berarti operator digunakan sesudahnya.
c.

Operator Assignment ( Penugasan )

Operator assignment dalam Java digunakan untuk memberikan sebuah nilai ke


sebuah variabel. Operator assignment hanya berupa =, namun selain itu dalam Java
dikenal beberapa shortcut assignment operator yang penting.
d. Operator Relasi
Operator relasi dalam Java digunakan untuk menghasilkan nilai boolean yang
sering digunakan untuk mengatur alur jalannya sebuah program.
e. Operator Logical
Operator ini digunakan untuk ekspresi logik yang menghasilkan nilai boolean.
Operator-operator yang digunakan adalah AND ( && ), OR ( ) dan NOT ( ! ).
f.

Operator Bitwise

Operator ini dalam Java digunakan untuk melakukan manipulasi bit.

11 | P a g e

2.5 Operasi I/O Sistem Sederhana


Stream Standard

System.in: menangani pembacaan dari keyboard (standard input)

System.out: mengirimkan keluaran ke layar (standard output)

System.err: mengirimkan kesalahan (standard error)

Membaca Input dari Keyboard


Menggunakan class Scanner (java.util.Scanner) dengan method sebagai berikut::

nextInt(): untuk menerima tipe data integer

nextShort(): untuk menerima tipe data short

nextLong(): untuk menerima tipe data long

nextDouble(): untuk menerima tipe data double

nextFloat(): untuk menerima tipe data float

nextLine(): untuk menerima tipe data string

nextBoolean(): untuk menerima tipa data boolean

Contoh:
Pembagian.java
public class Pembagian{ public static void main(String[] args){ Scanner input = new
Scanner(System.in);
System.out.print(Masukkan
bilangan pertama: );
int bilangan1 = input.nextInt();
System.out.print(Masukkan bilangan kedua: );

12 | P a g e

int bilangan2 = input.nextInt();


System.out.print(Hasil
pembagian: +
(bilangan1 / bilangan2));
}
}

2.6 Pengaturan Format Output Numerik


Metode Pengaturan Format
1. Menggunakan Method System.out.format()
2. Menggunakan DecimalFormat Class

1. Method System.out.format()
public class TestFormat { public static void main(String[] args) { long n = 461012;
System.out.format(%d%n, n);
System.out.format(%08d%n, n);
System.out.format(%+8d%n, n);
System.out.format(%,8d%n, n);
System.out.format(%+,8d%n%n, n);
double pi = Math.PI;
System.out.format(%f%n, pi);
System.out.format(%.3f%n, pi);

13 | P a g e

System.out.format(%10.3f%n, pi);
System.out.format(% -10.3f%n, pi);
Calendar c = Calendar.getInstance();
System.out.format(%tB %te, %tY%n, c, c, c);
System.out.format (%tl:%tM %tp%n, c, c, c);
System.out.format(%tD%n, c);
}}
Hasil Eksekusi
461012
00461012
+461012
461,012
+461,012
3.141593
3.142 3.142
3.142
May 29, 2006
2:34 am
05/29/06

14 | P a g e

2. DecimalFormat Class
public class DecimalFormatDemo {
public static void main(String[] args){
DecimalFormat formatku = new DecimalFormat(###.##);
//String output = formatku.format(45.8398767);
//System.out.println(output); System.out.println(formatku.format(45.8398767));
}
}
DecimalFormatDemoLengkap
public class DecimalFormatDemoLengkap{
static public void customFormat(String pattern, double value ) {
DecimalFormat myFormatter = new DecimalFormat(pattern);
String output = myFormatter.format(value); System.out.println(value + +
pattern+ + output);
}
static public void main(String[] args) {
customFormat(###,###.###, 123456.789);
customFormat(###.##, 123456.789);
customFormat(000000.000, 123.78);
customFormat($###,###.###, 12345.67);
}
}

15 | P a g e

Hasil Eksekusi
123456.789 ###,###.### 123,456.789 123456.789 ###.## 123456.79 123.78
000000.000 000123.780 12345.67 $###,###.### $12,345.67

2.7

Konversi String dan Bilangan (Number)

1. Konversi String ke Bilangan


String myString;
double myDbl = Double.parseDouble(myString); //konversi string ke double
Integer.parseInt(myString); //konversi string ke integer Float.parseFloat(myString);
//konversi string float
Argument untuk Menerima Input
public class LuasSegitigaArgs {
public static void main(String[] args) {
double alas= Double.parseDouble(args[0]);
double tinggi = Double.parseDouble(args[1]); double luas = (alas*tinggi)/2;
System.out.println(Luas Segitiga : + luas);
}
}

16 | P a g e

2. Konversi Bilangan ke String


double myDouble;
int myInteger;
float myFloat;
String myString = Double.toString(myDouble);
Integer.toString(myInteger);
Float.toString(myFloat);

2.8

Pernyataan Penentu Keputusan

1. Statement if
Pernyataan if akan menentukan sebuah pernyataan (blok kode) yang akan
dieksekusi jika dan hanya jika persyaatan bernilai benar (true). Bentuk dari
pernyataan if:
If(boolean_expression)
Statement;
Atau
If(boolean_expression) {
Statement1;
Statement2;
....;
}

17 | P a g e

Dimana, boolean_expression adalah sebuah pernyataan logika (true/false) atau


variabel bertipe boolean.
2. Statement if-else
Pernyataan if-else digunakan apabila ingin mengeksekusi beberapa pernyataan
dengan kondisi true dan pernyataan lain dengan kondisi false. Bentuk
statemant if-else:
If(boolean_expression)
Statement;
Else
Statement;
Dapat juga ditulis seperti ini:
If(boolean_expression) {
Statement1;
Statement2;
....;
}else{
Statement1;
Statement2;
.....;
}

18 | P a g e

3. Statement if-else-if
Pernyataan pada bagian kondisi else dari blok if-else dapat menjadi struktur
if-else yang lain. Kondisi dtruktur seperti ini mengijinkan kita untuk membuat
seleksi persyaratan yang lebih komplex. Bentuk statement if-else if:
If(boolean_expression1){
Statement1;
Else If(boolean_expression2) {
Statement2;
}else{
Statement3;
}
4. Statement switch
Cara lain untuk membuat cabang dengan menggunakan kata kunci switch.
Switch mengkonstruksikan cabang untuk beberapa kondisi dari nilai. Bentuk
statement switch:
Switch(switch_expression){
Case case_selector2;
Statement1;
Statement2;
......;
Break;
Case case_selector2;
Statement1;
19 | P a g e

Statement2;
......;
Break;
Case case_selector-n;
Statement-n;
Break;
Default;
Statement1;
Statement2;
.....;
}

2.9

Pernyataan Pengulagan Proses

1. For

for sering disebut for loop, karena digunakan untuk proses looping
atau pengulangan

Bentuk:
for (inisialisasi; kondisi; penaikan_penurunan){
Pernyataan
}

20 | P a g e

P e r n ya t a a n F O R . j a v a
public class PernyataanFOR {
public static void main(String[] args){
for(int i=1; i<11; i++){
System.out.println(i); }}}

P e r n ya t a a n F O R E n h a n c e d . j a v a
class PernyataanFOREnhanced {
public static void main(String[] args){
int[] numbers = {1,2,3,4,5,6,7,8,9,10};
for (int i : numbers) {
System.out.println(i); }}}

2. While

while digunakan untuk melakukan proses pengulangan suatu


blok pernyataan selama kondisinya bernilai true

Bentuk:
while (kondisi) {
pernyataan
}

21 | P a g e

PernyataanWHILE.java
class PernyataanWHILE {
public static void main(String[] args){
int i = 1;
while (i < 11) {
System.out.println(i);
i++;}} }

3. DoWhile

do while digunakan untuk melakukan proses pengulangan suatu blok


pernyataan selama kondisinya bernilai true

Pernyataan dalam blok paling tidak dieksekusi satu kali

Bentuk:
do {
pernyataan
} while (kondisi);

PernyataanDOWHILE.java
class PernyataanDOWHILE {
public static void main(String[] args){ int i = 1;
do {
System.out.println(i); i++; } while (i <= 10); } }

22 | P a g e

2.10 Pernyataan Pemindah Proses


1. Return

Digunakan untuk keluar dari method

return memiliki dua bentuk:


1. mengembalikan nilai (sesuai dengan tipe data)
2. tidak mengembalikan nilai (untuk void)

Contoh:
int
perkalian(int x, int y){
return x * y;
}
void perkalian(int x, int y){ hasilKali = x * y;
return;
}
2. Break

Penyataan break digunakan untuk keluar dari suatu pengulangan (loop)

Penggunaan break bisa berbentuk tanpa label atau berlabel

PernyataanBREAK.java
public class PernyataanBREAK {
public static void main(String[] args){
for(int i=1; i<11; i++){

23 | P a g e

if(i==5)
break;
System.out.println(i);
}} }

PernyataanBREAKLABEL.java
public class PernyataanBREAK {
public static void main(String[] args){
selesai:
for(int i=1; i<11; i++){ if(i==5)
break selesai;
System.out.println(i); }} }

3. Continue

Digunakan untuk melanjutkan eksekusi ke suatu pengulangan (loop)

Bisa berbentuk tanpa label atau berlabel

Bentuk code persis sama dengan break , baik untuk yang tanpa label atau berlabel

24 | P a g e

BAB III
HASIL PERCOBAAN

3.1

Modul 2 - Ruang Lingkup Pemograman Java


Membuat program java menggunakan text editor dan console pada
environment.

Jalankan software Netbeans


melalui klik start All Programs
Netbeans .Netbeans IDE 7.3.1.

Pada menu klik File New


Project, kemudian pada
Categories pilih Java kemudian
klik Next

Pada Project Name Isikan


nama aplikasi yang akan
dibuat : PagiA, kemudian
hilangkan ceklist pada Set as
Main Project dan Create
Main Class kemudian klik
Finish.

25 | P a g e

Pada default package klik


kanan

New, kemudian

pilih JFrame Form.

Beri nama frame contoh


Modul2" dan nama
package . Jangan
menggunakan spasi dalam
setiap penamaan dalam
project java.

kemudian klik Finish

26 | P a g e

Desain Frame seperti pada gambar berikut

Berikut adalah detail item-item yang diambil dari palette. Ganti variable name
sesuai dengan detail label dan textfield.

Objek Palette

Propertis

Nilai

JLabel1

Text

NPM

JLabel2

Text

Nama

JLabel3

Text

Jenis Kelamin

JLabel4

Text

Tanggal Lahir

JLabel5

Text

Alamat

JLabel6

Text

Hobbi

27 | P a g e

JLabel7

Text

Biodata

JTextField1

Text variable name

txtnpm

JTextField2

Text variable name

txtnpm

JTextField3

Text variable name

txttanggallahir

JTextField4

Text variable name

txtalamat

JTextField5

Text variable name

txthobbi

JComboBox

Text variable name

cbojk

Model : Pria, wanita


JButton1

Text variable name

btnproses

JLabel7

text

Biodata

JLabel8

NPM
Variable name

JLabel9

Nama
Variable name

JLabel10

lbltl

Alamat
Variable name

JLabel13

Lbljk

Tanggal Lahir
Variable name

JLabel12

lblnama

Jenis Kelamin
Variable name

JLabel11

lblnpm

lblalamat

Hobi
Variable name

lblhobi

28 | P a g e

Ketikkan code program pada button proses seperti diberikut:


private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
lblnpm.setText(txtnpm.getText());
lblnama.setText(txtnama.getText());
lbljk.setText((String)cbojk.getSelectedItem());
lbltl.setText(txttl.getText());
lblalamat.setText(txtalamat.getText());
lblhobi.setText(txthobi.getText());
txtnpm.setText("");
txtnama.setText("");
txttl.setText("");
txthobi.setText("");
txtalamat.setText("");
cbojk.setSelectedItem("Pilih");
}

Compile program dengan mengklik menu Build> Build Main Project- Run
Program dengan mengklik menu Run> Run Main Project.

HASIL MODUL 2:

29 | P a g e

3.2

Modul 3 - Mengidentifikasi Dasar-Dasar Program


Java
Membedakan beberapa hal yang penting pada Java seperti, Java literal, tipe
data primitif, tipe data variabel, identifier dan operator.

Buatlah program dengan nama frame Modul3 yang menghasilkan output


desain frame seperti pada gambar

Berikut adalah detail navigator untuk pallete dan variable name:

Palette

Properties

Nilai

jLabel1

Text

Input Nilai Pertama

jLabel2

Text

Input Nilai Kedua

jLabel3

Text

Hasil

jTextField1

Variable name

txtinput1

jTextField2

Variable name

txtinput2

jTextField3

Variable name

Txthasil

JButton1

+
Variable name

Btntambah

30 | P a g e

JButton2

Variable name

JButton3

btnkurang

X
Variable name

JButton4

btnkali

/
Variable name

btntambah

Masukan kode program dibawah sesuai pada 4 button dengan cara klik kanan button => Event => Action => Mouse=>pilih
mouseClicked. Ketikan kode program dibawah ini sesuai variable
button masing masing:
private void btntambahActionPerformed(java.awt.event.ActionEvent evt) {
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) {
Integer nilai1=Integer.valueOf(txtinput1.getText());
Integer nilai2=Integer.valueOf(txtinput2.getText());
Integer Hasil3 = nilai1 * nilai2;
String Hasil = String.valueOf(Hasil3);
txthasil.setText(Hasil);
}

31 | P a g e

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


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


Integer nilai1=Integer.valueOf(txtinput1.getText());
Integer nilai2=Integer.valueOf(txtinput2.getText());
Integer Hasil3 = nilai1 / nilai2;
String Hasil = String.valueOf(Hasil3);
txthasil.setText(Hasil);
}

Compile program dengan mengklik menu Build> Build Main Project- Run
Program dengan mengklik menu Run> Run Main Project

32 | P a g e

3.3

HASIL MODUL 3 :

Modul 4 - Struktur Kondisi


Menggunakan struktur kontrol pemilihan (if, else, switch) yang
digunakan untuk memilih
blok kode yang akan
dieksekusi

Buatlah program dengan


nama frame Modul4
yang menghasilkan output
desain frame seperti pada
gambar :

33 | P a g e

Berikut adalah propertise Variable / Item-item yang diambil dari pallete sesuai
pada desain frame diatas:

Palette 1 Edit Text

Palette 2

Variable name

Desktop Pane

Propertiies
Background : Green

Nama
jLabel1

Text Field

Txtnama

Combo Box

cbostatus

Pembeli
Model : Umum,
jLabel2

Status

Member
Model : Pilih, iPad,
jLabel3

Jenis Barang

Combo Box

Cbojenis
iPhone, iPod

jLabel4

Harga

Text Field

Txtharga

Editable : False

jLabel5

Jumlah

Text Field

txtjumlah

Button

Btnbayar

Event
jLabel6

ActionPerformed
jLabel7

Diskon

Text Field

txtdiskon

Editable : False

jLabel8

Total Bayar

Text Field

Txttotal

Editable : False

34 | P a g e

Pada Comco Box jenis barang. Tuliskan kode program berikut:Caranya klik
kanan cbojenis => Event=>Action=>ActionPerformed
private void cbojenisActionPerformed(java.awt.event.ActionEvent evt) {
if(cbojenis.getSelectedItem()=="IPAD"){
txtharga.setText("4999000");
}else if(cbojenis.getSelectedItem()=="IPHONE"){
txtharga.setText("7999000");
}else if(cbojenis.getSelectedItem()=="IPOD"){
txtharga.setText("2999000");
}else{
txtharga.setText("");
}
}

klik btnbayar (button bayar) pilih event=> action=>Actionperformed.


Tuliskan kode program berikut:
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.05*harga;
nilaidiskon=harga-diskon;
total=nilaidiskon*jumlah;
}else{
diskon=0;

35 | P a g e

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

Kemudian jalankan program Dengan cara klik kanan pada file program
(frame) pilih Run File atau tekan Shift + F

HASIL MODUL 4 :

36 | P a g e

3.4 Modul 5 Struktur Kondisi (Lanjutan)


Menggunakan struktur
kontrol pemilihan (if, else, switch)
yang digunakan untuk memilih
blok kode yang akan dieksekusi

Buatlah program dengan


nama frame Modul5 yang
menghasilkan output desain
frame seperti pada gambar :

Selanjutnya, tambahkan beberapa komponen pallete seperti pada tabel


berikut::

Objek Palette

Properties

Nilai

JLabel1

Text

Perhitungan Gaji

JLabel2

Text

NIP

JLabel3

Text

Nama

JLabel4

Text

Jabatan

JLabel5

Text

Gaji Pokok

JLabel6

Text

Status

37 | P a g e

JLabel7

Text

Tunjangan Istri(20% Gaji)

JLabel8

Text

Jumlah Anak

JLabel9

Text

Tunjangan Anak(15%Gaji)

JLabel10

Text

Gaji Kotor

JLabel11

Text

Pajak(10% Gaji)

JLabel12

Text

Gaji Bersih

JTextField1

Text

txtnip

Variable Name
JTextField2

Text

txtnama

Variable Name
JTextField3

Text

txtgajipokok

Variable Name
JTextField4

Text

txttunjanganistri

Variable Name
JTextField5

text

txtjumlahanak

Variable Name
JTextField6

text

txttunjangananak

Variable Name
JTextField7

Text

txtgajikotor

Variable Name
JTextField8

text

txtpajak

Variable Name

38 | P a g e

JTextField9

text

txtgajibersih

Variable Name
JRadioButton1

JRadioButton

text

Menikah

Variable Name

Opsi1

text

Belum Menikah

Variable Name

Opsi2

JButtonGroup1

JButton1

text

Clear

Variable Name

btnbersih

text

Hitung

Variable Name

btnhitung

Variable name

Cmbjabatan

Model

Direktur

JButton2

Manager
JComboBox

Kabag
Sekretaris
Karyawan
Office Boy

39 | P a g e

HASIL MODUL 5 :

Selanjutnya tambahkan komponen ButtonGroup untuk komponen


JRadioButton. Ubah properti buttonGroup pada kedua JRadioButton (opsi1
dan opsi2) menjadi buttonGroup1.

Setelah selesai desain form. Kemudian ke tab Source dan tuliskan kode
program:
public class modul5 extends javax.swing.JFrame {
int gajipokok,gajikotor,pajak,gajibersih;
// Kode program dengan awalannya int adalah variabel dideklarasikan dengan tipe
data Integer.
int tunjanganistri,tunjangananak,jumlahanak;
String t_istri,t_anak;
String gajikotor_1 ,pajak_1,gajibersih_1;
//Kode program dengan awalannya String adalah variabel dideklarasikan dengan
tipe data string
/**

40 | P a g e

* Creates new form modul5 */


public modul5() {
setTitle("Form perhitungan gaji pegawai");
initComponents();
}

Selanjutnya di bagian bawah dari kode perintah initComponents(); }


Ketikkan kode berikut ini:
private void Gaji(){txtgajibersih
//Method dengan nama Gaji yang berfungsi untuk menampilkan
jumlah gaji dengan pernyataan switch pada txtgajipokok ketika item model
di cmbjabatan dipilih.
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:

41 | P a g e

txtgajipokok.setText("1200000");
break;
case 5:
txtgajipokok.setText("750000");
break;
}
}

private void TunjanganAnak(){


// Method dengan nama TunjanganAnak berfungsi sebagai pernyataan kondisi jika
tunjangan anak dapat diperoleh maksimal 2 anak setiap pegawai.
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(){
// Method dengan nama Menikah digunakan untuk menyatakan pilihan opsi1
jRadioButton1 mendapat 20% tunjangan istri.

42 | P a g e

txttunjanganistri.setEnabled(true);
txttunjangananak.setEnabled(true);
txtjumlahanak.setEnabled(true);
gajipokok = Integer.valueOf(txtgajipokok.getText());
tunjanganistri=(20*gajipokok)/100;
}
private void BersihTeks(){
// Method dengan nama BersihTeks, maksudnya yaitu untuk membersihkan/
mengosongkan nilai pada tiap-tiap JTextField dengan tujuan untuk memulai nilai baru.
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");
}

Selanjutnya kembali lagi ke tab Desain.

43 | P a g e

Klik kanan pada JFrame setelah itu pilih Events

Windows

windowOpened.

Ketikkan kode perintah: BelumMenikah();


private void formWindowOpened(java.awt.event.WindowEvent evt) {
// TODO add your handling code here
BelumMenikah();
}

Klik kanan pada cmbjabatan setelah itu pilih Events =>Item =>
itemStateChanged. kemudian ketikkan kode berikut ini:
private void cmbjabatanItemStateChanged(java.awt.event.ItemEvent evt) {
BersihTeks();
Gaji();
if(opsi1.isSelected()==true){
Menikah();

44 | P a g e

}else{
BelumMenikah();
}
}

klik kanan jRadioButton1 Menikah (opsi1) lalu


events=>Action=>ActionPerformed:
private void opsi1ActionPerformed(java.awt.event.ActionEvent evt) {
Menikah();
}

klik kanan jRadioButton1 Menikah (opsi1) lalau


events=>Action=>ActionPerformed:
private void opsi2ActionPerformed(java.awt.event.ActionEvent evt) {
TunjanganAnak();
}

klik kanan pada txtjumlahanak setelah itu pilih events=>Key+>keyRealesed:


private void txtjumlahanakkeyReleased(java.awt.event.KeyEvent evt) {
BelumMenikah();
}

klik kanan btnbersih pilih Events=>Mouse=>MouseClicked:


private void btnbersihMouseClicked(java.awt.event.MouseEvent evt) {
BersihTeks();
}

klik kanan btnhitung pilih Events=>Mouse=>MouseClicked:


private void btnhitungMouseClicked(java.awt.event.MouseEvent evt) {
Total();

45 | P a g e

Compile (F9) dan Run Program melalui menu Run

Isikan NIP, Nama, dan Pilih Jabatan, Status, Jika sudah Menikah isikan

Run (Shift + F6).

Jumlah anak. Setelah itu klik tombol Hitung maka total gaji akan
ditampilkan.

3.5 Modul 6 - MDI (Multi Document Interface)


Aplikasi MDI (Multiple document Interface) merupakan
aplikasi yang bisa menampilkan beberapa dokumen sekaligus.

Buat Project baru dari Netbeans .dan tentukan lokasi penyimpanan project
atau Buka Project Sebelumnya caranya dari menu File

Open Project

cari project folder pada computer anda kemudian klik Open Project.

Buat JFrame Form pada project pilih menu File

New File pilih Project

anda, kemudian pada Categories pilih Swing GUI Forms dan pada File Types
pilih JFrame Form kemudian klik Next.

Isikan Class name FormUtama dan Pakage MDI Kemudian klik Finish.

Tambahkan JFrame baru dan beri nama Form Utama lalu kalian
tambahkan lagi komponen Desktop Pane dan JMenu Bar dan sesuaikan
dengan keinginan.

Tambahkan JMenuItem di Menu File dengan Cara klik kanan Menu File -->
Add From Palette --> Menu Item.

46 | P a g e

Ganti Text JMenuItem dengan 'New' caranya klik kanan JMenuItem1 -> Edit
Text

Ulangi Langkah, buat tampilannya seperti berikut :

Buat Variable Global untuk dapat diakses semua method yang ada didalam
class FormUtama.

Tambahkan perintah berikut di dalam constructor FormUtama .

Buat Method baru dengan nama "FormBaru" dengan isi berikut :


package MDI;
import java.awt.Dimension;
import javax.swing.JInternalFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
public class FormUtama extends javax.swing.JFrame {
private int jml;
private String judul;
public FormUtama() {
setTitle("MDI Form");
setExtendedState(MAXIMIZED_BOTH);
initComponents();
}

47 | P a g e

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

Isi Perintah pada Menu New ( JMenuItem ) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed.
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here
jml = jml + 1;
judul = "Form Baru"+jml;
FormBaru();
}

Isi Perintah pada Menu Keluar (JMenuItem) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed.
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent
evt) {

System.exit(0);

48 | P a g e

Tambahkan JInternalFrame Form pada project pilih menu File

New File

pilih Project anda, kemudian pada Categories pilih Swing GUI Forms dan
pada File Types pilih JInternalFrame Form kemudian klik Next.

Isikan Class name contoh IFModul2 dan Pakage MDI kemudian klik
Finish.

Kemudian Desain persis seperti program pada modul2, atau copy paste
dengan cara :

Buka Modul2 yang


sebelumnya
kemudian pilih
navigator item
jDesktopPane1
klik kanan Copy.

Buka IFModul2 yang sebelumnya kemudian pilih navigator item


jInternalFrame

klik kanan Paste.

49 | P a g e

Lakukan hal yang sama (ikuti langkah-langkah sebelum ny) untuk membuat
file jInternalFrame Form untuk IFModul3, IFModul4, IFModul5.

Atur Propertise pada masing-masing InternalFrame, pilih navigator item


jInternalFrame

klik kanan Propertise. Cheklist Closable sehingga bernilai

true.

Kembali pada FormUtama kemudian berikan perintah-perintah untuk


memanggil form-form yang telah dibuat diatas.

50 | P a g e

Isi Perintah pada Menu Modul2 (JMenuItem) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed.
private void jMenuItem3ActionPerformed(java.awt.event.ActionEvent evt) {
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);
}

Isi Perintah pada Menu Modul3 (JMenuItem) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed.
private void jMenuItem4ActionPerformed(java.awt.event.ActionEvent evt) {
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);
}

Isi Perintah pada Menu Modul4 (JMenuItem) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed:
private void jMenuItem5ActionPerformed(java.awt.event.ActionEvent evt) {
IFModul4 form4 = new IFModul4();

51 | P a g e

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

Isi Perintah pada Menu Modul5 (JMenuItem) dengan cara Klik kanan pada
menu New --> Events --> Action --> actionPerformed.
private void jMenuItem6ActionPerformed(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);
}

52 | P a g e

Run Program melalui FormUtama menu Run

Hasil Modul 6:

Run File (Shift + F6).

gra

53 | P a g e

man Java UNPAB

3.6 Modul 7 - Form Input Data


Berikut ini adalah cara untuk membuat program input data customer dari Java
dan
Netbeans dan menggunakan database MySQL

Buatlah database dan tabel terlebih dahulu :


CREATE DATABASE dbjava;
USE dbjava;
CREATE TABLE tcustomer (
id VARCHAR(6) PRIMARY KEY,
nama VARCHAR(25),
nohp VARCHAR(14),
alamat VARCHAR(100));

Buat Project baru dengan pilihan kategori Java Aplication, kemudian beri
nama ProgramPenjualan. Jika sudah klik Finish.

Buatlah Pakage baru caranya, klik kanan Project, New -> Java Pakage. Beri
nama koneksi, kemudian klik Finish.

Buatlah JClass
caranya, klik
kanan pakage
koneksi, New ->
Java Class. Beri
nama ClassDB,

54 | P a g e

kemudian klik Finish.

Di bagian bawah kode public class ClassDB {. ketikkan kode berikut ini:
package koneksi;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
/**
*
* @author lako
*/
public class ClassDB {
private static Connection koneksi;
public static Connection getkoneksi(){
if(koneksi==null){
try{
String url=new String();
String user=new String();
String password=new String();
url="jdbc:mysql://localhost:3306/dbjava";
user="root";
password="admin";
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
koneksi=DriverManager.getConnection(url,user,password);
}
catch (SQLException t) {
System.out.println("Error Membuat Koneksi");
}

55 | P a g e

}
return koneksi;
}
}

Buatlah JFrame Form caranya, klik kanan Project, New -> JFrame Form. Beri
nama FrmInputData dan nama pakage gui, kemudian klik Finish

Selanjutnya, tambahkan beberapa komponen seperti yang ada di dalam tabel


berikut ini:

Objek

Properties

Nilai

jDekstopPane1

Background

Yellow

jPanel1

Border

Title Border = Data Customer

JLabel1

Text

ID

JLabel2

Text

Nama

JLabel3

Text

No HP

JLabel4

Text

Alamat

JTextField1

text

txtid

Variable name
JTextField2

text

Txtnama

Variable name
JTextField3

text

Txthp

Variable name
JTextArea

text

Txtalamat

56 | P a g e

Variable name
JButton1

JButton2

text

Save

Variable name

Btnsave

text

Clear

Variable name

Btncler

Susunan posisi dan


ukuran komponen
seperti pada gambar
berikut:

Selanjutnya Ketikkan kode berikut ini:


public FormInputData() {
initComponents();
bacaId();
txtid.setEnabled(false);
btnsave.setEnabled(false);
}
private void bacaId() {
int kode = 0;
try{
Class.forName("com.mysql.jdbc.Driver");

57 | P a g e

try (Connection cn =
DriverManager.getConnection("jdbc:mysql://localhost/dbjava","root","");
Statement smt = cn.createStatement()){
String sql ="Select max(Id) as kd FROM tcustomer";
ResultSet rs = smt.executeQuery(sql);
if (rs.next()){
kode = rs.getInt("kd");
}else{
}
txtid.setText("000" +(kode+1));
}
catch (ClassNotFoundException | SQLException e) {
}
}

Deklarasikan class import berikut :


Package gui;
Import java.sql.* ;
Import javax.swing.JOptionPane;
Import koneksi.ClassDB;

private void simpan() {


String id = this.txtid.getText();
String nama = this.txtnama.getText();
String nohp = this.txthp.getText();
String alamat = this.txtalamat.getText();
String st = "Free";
if ("".equals(this.txtid.getText()) || ("".equals(this.txtnama.getText()))

58 | P a g e

|| ("".equals(this.txthp.getText())) ||
("".equals(this.txtalamat.getText()))) {
JOptionPane.showMessageDialog(this, "Lengkapi data");
} else {
try {
Connection c = ClassDB.getkoneksi();
Statement s = c.createStatement();
String sql = "Insert into tcustomer values (?,?,?,?)";
try (com.mysql.jdbc.PreparedStatement
p= (com.mysql.jdbc.PreparedStatement) c.prepareStatement(sql))
{
p.setString(1, id);
p.setString(2, nama);
p.setString(3, nohp);
p.setString(4, alamat);
p.executeUpdate();
}J
OptionPane.showMessageDialog(this, "Sukses Tambah data");
} catch (SQLException e) {
System.out.println("Terjadi kesalahan " + e);
} finally {
bersih();
}
}
}

Selanjutnya di bagian bawah kode perintah:


private void () {
59 | P a g e

bacaId();
txtnama.setText(null);
txthp.setText(null);
txtalamat.setText(null);
btnsave.setEnabled(false);
btnclear.setEnabled(false);
txtid.setEnabled(false);
}

Klik kanan pada btnsave setelah itu pilih Events -> Action ->
actionPerformed. Ketikkan kode perintah:
simpan();

-Klik kanan pada btnclear setelah itu pilih Events -> Action ->
actionPerformed:
bersih();

Klik kanan pada txtnama setelah itu pilih Events -> Key -> KeyTyped:
btnsave.setEnabled(true);
btnclear.setEnabled(true);

-Tambahkan Library konektor MySQL caranya : klik kanan folder Libraries > Add Library -> pilih MySQL JDBC Driver, -> Add Library.

Kompile dan jalankan dari menu Run -> Run File atau tekan Shift + F6.

Id akan otomatis terisi. Isikan Nama, No HP, Alamat kemudian pilih tombol
Simpan.

60 | P a g e

3.7 Modul 8 - Form Input Data (Lanjutan)


Membuat program input data transaksi dari Java dan Netbeans dan
menggunakan database MySQL. Namun sebelum itu anda
telah menyelesaikan dan menyiapkan program sebelumnya:

Buatlah database dan tabel terlebih dahulu :


CREATE DATABASE dbjava;
USE dbjava;
CREATE TABLE tpenjualan (
invoice VARCHAR(12) PRIMARY KEY,
tanggal DATE,
id VARCHAR(6),
nama VARCHAR(30),
status VARCHAR(15),
barang VARCHAR(30),
harga VARCHAR(12),
jumlah VARCHAR(6),
diskon VARCHAR(12),
bayar VARCHAR(12) )

Buat Project baru dengan pilihan kategori Java Aplication, kemudian beri
nama Modul8. Jika sudah klik Finish.

Buatlah Pakage baru caranya, klik kanan Project, New -> Java Pakage. Beri
nama koneksi, kemudian klik Finish.

61 | P a g e

Buatlah JClass caranya, klik


kanan pakage koneksi, New ->
Java Class. Beri nama
ClassDB, kemudian klik Finish.

Tambahkan Library konektor MySQL caranya : klik kanan folder Libraries ->
Add Library -> pilih MySQL JDBC Driver, -> Add Library

Di bagian bawah kode public class ClassDB {. ketikkan kode berikut ini:
package koneksi;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class ClassDB {
private static Connection koneksi;
public static Connection getkoneksi(){
if (koneksi==null) {
try{
tring url=new String();
String user=new String();
String password=new String();
url=jdbc:mysql://localhost:3306/dbjava;
user=root;
password=1234;

62 | P a g e

Driver Manager.registerDriver(new com.mysql.jdbc.Driver()):


koneksi:Driver Manager.getConnection(url,user,password);
} atcth (SQLException t) {
System.out.println(Error membuat konneksi);
}
}
return koneksi;
}}

Buatlah JFrame Form caranya, klik kanan Project, New -JFrame Form. Beri
nama FormTransaksi dan nama pakage gui, kemudian klik Finish.

Selanjutnya, tambahkan beberapa komponen seperti yang ada di dalam tabel


berikut ini:

Objek

Propertis

Nilai

jDekstopPane1

Background

Red

JLabel1

text

Tanggal

JLabel2

Text

Invoice

JLabel3

Text

Id Customer

JLabel4

Text

Nama

JLabel5

Text

No Hp

JLabel6

Text

Alamat

JLabel7

Text

Status Member

JLabel8

Text

Jenis Barang

JLabel9

text

Harga

63 | P a g e

JLabel10

Text

Jumlah

JLabel11

Text

Diskon

JLabel12

Text

Total Bayar

JTextField1

Variable name

Txttanggal

JTextField2

Variable name

Txtinvoice

JTextField3

Variable name

Txtnama

JTextField4

Variable name

Txthp

JTextArea1

Variable name

Txtalamat

JComboBox1

Variable name

Cbostatus

JComboBox2

Variable name

Cbojenis

JTextField6

Variable name

Txtharga

JTextField7

Variable name

Txtjumlah

JTextField8

Variable name

Txtdiskon

JTextField9

Variable name

txttotal

JButton1

text

Bayar

Variable name

Btnbayar

Text

Simpan

Variable name

BtnSimpan

JButton2

64 | P a g e

Susun komponen seperti pada gambar berikut:

Deklarasikan class import berikut :


package gui;
import java.awt.MeadlessException;
import java.sql;
import java.text.SimpleDataFormat;
import java.util.Date;
import javax.swing.JOptionPane;
import koneksi.ClassDB;

Selanjutnya Ketikkan kode berikut ini:


public class FrmTransaksi entends javax.swing.JFrame {
public FrmTransaksi() {
initComponents();
invoice();

65 | P a g e

Date current = new Date ();


SimpleDateFormat frmt = new SimpleDateFormat (dd/MM/yyyy);
String dataString1 = frmt.format(current);
txttanggal.setText(dateString1);
}

Lanjutkan ketik dibahwahnya kode berikut :


private void invoice(){
//Keterangan Kode: Method dengan nama invoice, digunakan untuk mencari data id
invoice pada database tpenjualan.
String kode = "14000" ;
try {
Class.forName("com.mysql.jdbc.Driver");
try (Connection cn =
DriverManager.getConnection("jdbc:mysql://localhost/dbjava", "root", "");
Statement smt = cn.createStatement()) {
String sql = "SELECT max(invoice) as iv FROM tpenjualan";
ResultSet rs = smt.executeQuery(sql) ;
if (rs.next()) {
} else {
}
txtinvoice.setText((kode+1));
}
} catch (ClassNotFoundException | SQLException e) {
}
}

66 | P a g e

private void cariId(){


try {
Class.forName("com.mysql.jdbc.Driver");
try (Connection cn = DriverManager.getConnection("jdbc:mysql://localhost/dbjava",
"root", "");
Statement smt = cn.createStatement()) {
String sql = "SELECT * FROM tcustomer where id ='"+txtid.getText()+"' " ;
ResultSet rs = smt.executeQuery(sql) ;
if (rs.next()) {
txtnama.setText(rs.getString("Nama"));
txthp.setText(rs.getString("nohp"));
txtalamat.setText(rs.getString("alamat"));
} else {
JOptionPane.showMessageDialog(null,"Id Customer Tidak
Terdaftar","INFORMASI",JOptionPane.INFORMATION_MESSAGE) ;
txtid.setText(null);
txtnama.setText(null);
txtid.requestFocus() ;
}
}
} catch (ClassNotFoundException | SQLException | HeadlessException e) {
}
}
private void simpan(){
String iv=this.txtinvoice.getText();
String tgl=this.txttanggal.getText().toString();
String id=this.txtid.getText();

67 | P a g e

String nama=this.txtnama.getText();
String status=this.cbostatus.getSelectedItem().toString();
String barang=this.cbojenis.getSelectedItem().toString();
String harga=this.txtharga.getText();
String jumlah=this.txtjumlah.getText();
String diskon=this.txtdiskon.getText();
String bayar=this.txttotal.getText();
String st="Free";
if ("".equals(this.txtinvoice.getText()) || ("".equals(this.txttanggal.getText()))
|| ("".equals(this.txtid.getText()) || ("".equals(this.txtnama.getText()))
|| ("".equals(this.cbostatus.getSelectedItem().toString())) ||
("".equals(this.cbojenis.getSelectedItem().toString()))
|| ("".equals(this.txtharga.getText())) || ("".equals(this.txtjumlah.getText()))
|| ("".equals(this.txtdiskon.getText())) || ("".equals(this.txttotal.getText()))))
{
JOptionPane.showMessageDialog(this, "Lengkapi data");
}else{
try {
Connection c=ClassDB.getkoneksi();
Statement s= c.createStatement();
String sql="Insert into tpenjualan values (?,?,?,?,?,?,?,?,?,?)";
try (com.mysql.jdbc.PreparedStatement p = (com.mysql.jdbc.PreparedStatement)
c.prepareStatement(sql)) {
p.setString(1, iv);
p.setString(2, tgl);
p.setString(3, id);
p.setString(4, nama);

68 | P a g e

p.setString(5, status);
p.setString(6, barang);
p.setString(7, harga);
p.setString(8, jumlah);
p.setString(9, diskon);
p.setString(10, bayar);
p.executeUpdate();
}
JOptionPane.showMessageDialog(this, "Invoice Tersimpan");
}catch(SQLException e) {
System.out.println("Gagal Menyimpan " + e);
}finally{
bersih();
}
}
}
private void bayar(){
txtjumlah.setText("1");
int harga=Integer.parseInt(txtharga.getText());
int jumlah=Integer.parseInt(txtjumlah.getText());
int diskon, nilaidiskon, total ;
if(cbostatus.getSelectedItem()=="Silver"){
diskon = ((5 * harga)/100);
nilaidiskon = harga - diskon ;
total = (nilaidiskon * jumlah) ;
}else{
diskon = ((20 * harga)/100);

69 | P a g e

nilaidiskon = harga - diskon ;


total = (nilaidiskon * jumlah) ;
}
txtdiskon.setText(""+diskon);
txttotal.setText(""+total);
}
private void bersih(){
invoice();
txtid.setText(null);
txtnama.setText(null);
txthp.setText(null);
txtalamat.setText(null);
cbostatus.setSelectedItem("Pilih");
txtharga.setText(null);
txtjumlah.setText("1");
txtdiskon.setText(null);
txttotal.setText(null);
}

Klik kanan pada cbojenis setelah itu pilih Events -> Action ->
actionPerformed.
Ketikkan kode perintah:
private void cbojenisActionPerformed(java.awt.event.ActionEvent evt) {
//TODO add your handling code here :
if(cbojenis.getSelectedItem()==iPad){
ttxtharga.setText(4999000);
}else if (cbojenis.getSelectedItem()==iPhone){

70 | P a g e

txtharga.setText(7999000);
}else if (cbojenis.getSelectedItem()==iPod){
txtharga.setText(2999000);

}else{
txtharga.setText();
}
}

Klik kanan pada btnbayar setelah itu pilih Events -> Action ->
actionPerformed
Private void btnbayarActionPerformed(java.awt.event.ActionEvent evt) {
///TODO add your handling code here:
bayar();
}

Klik kanan pada txtnama setelah itu pilih Events -> Action -> MouseClicked:
private void txtnamaMouseClicked(java.awt.event.MouseEvent evt) {
//TODO add your handling code here:
cariId();
}
private void txtnamaMouseReleased(java.awt.event.MouseEvent evt) {
//TODO add your handling code here:
cariId();
}

Klik kanan pada btnsimpan setelah itu pilih Events -> Action ->
actionPerformed. Ketikkan kode perintah:

71 | P a g e

private void btnsimpanActionPerformed(java.awt.event.MouseEvent evt) {


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

Kompile dan jalankan dari menu Run -> Run File atau tekan Shift + F6.

72 | P a g e

BAB IV
ANALISA HASIL PERCOBAAN

1.1

Analisa Modul 2 - Ruang Lingkup Java

Untuk membuat program java ditulis dengan memanfaatkan text editor seperti
notepad, maupun editor yang lainnya. Sedangkan cara kedua adalah dengan
menggunakan NetBeans yang merupakan Integrated Development Environment
atau yang disebut IDE. IDE adalah sebuah peralatan dalam pemrograman yang
diintegrasikan ke dalam aplikasi software yang mendukung pembangunan GUI, text
atau penulisan kode, compiler dan debugger. Membedakan syntax-error dengan
runtime error.

1.2

Analisa Modul 3 - Dasar Pemrograman Java

Mengidentifikasi dasar dasar program java. Membedakan beberapa hal yang


penting pada Java seperti, java literal, tipe data primitif, tipe variabel, identifier dan
operator.
Keterangan:
1. Penjelasan Dasar Script Java
Baris 1 merupakan bagian untuk definisi class, berupa suatu blok yang dibatasi oleh {
dan ), class tersebut mempunyai metode main (). Metode main() merupakan awalnya
jalan program. Public adalah metode ini dapat dipanggil dari mana saja. Static adalah

73 | P a g e

metode bersifat sama untuk semua instan class String[] args adalah argument bawaan
dari class main()
2. Java identifier
Java Identifier adalah suatu tanda yang mewakili nama-nama variabel, methood,
class, dsb. Contoh dari Identifier adalah : Hello, main, System, out. Pendeklarasian
java adalah case-sensitive. Hal ini berarti bahwa Identifier : Hello tidak sama dengan
hello. Identifier tidak selalu menggunakan kata kunci dalam java seperti class,
public, void, dsb.
3. Keyword Dalam Java
Anda tidak dapat menggunakan keyword sebagai nama variabel, class, method anda.
True, false, dan null bukan kata kunci akan tetapi mereka termasuk kata-kata khusus,
jadi tidak dapat digunakan sebagai nama variabel.
4. Tipe data
Data adalah sesuatu yang sangat penting . Dalam memilih tipe data harus
memperhatikan fakta, penggunaan memori, rentang data juga ketelitiannya. Program
biasanya menggunakan tipe integer, floating point, karakter dan string.
5. Operator
Operator mengikuti bermacam-macam prioritas yang pasti sehingga compiler nya
akan tahu yang operator untuk dijalankan terlebih dahulu.

74 | P a g e

1.3

Analisa Modul 4 - Struktur Kondisi


o Menggunakan struktur kontrol keputusan (if, else, switch) yang
digunakan untuk memilih blok kode yang akan dieksekusi.
o Statement if, pernyataan if akan menentukan sebuah pernyataan (blok
kode) yang akan dieksekusi jika dan hanya jika persyaratan bernilai
benar(true).
o Statemen if-else, pernyataan if-else digunakan apabila kita ingin
mengeksekusi beberapa pernyataan dengan kondisi true dan
pernyataan yang lain dengan kondisi false.
o Statement if-else-if, pernyataan pada bagian kondisi else dari blok ifelse dapat menjadi struktur if-else yang lain. Kondisi struktur seperti
ini mengijinkan untuk membuat seleksi yang lebih kompleks.
o Statemen switch, switch mengkonstruksikan cabang untuk beberapa
kondisi dari nilai.
o Menggunakan struktur kontrol pengulangan (while, do-while, for)
yang digunakan untuk melakukan pengulangan pada blok kode yang
akan dieksekusi Menggunakan statement percabangan (break,
continue, return) yang digunakan untuk mengatur redirection dari
program.

75 | P a g e

1.4

Analisa Modul 5 - Struktur Kondisi (Lanjutan)

Menggunakan struktur kontrol pemilihan (if, else, switch) yang digunakan untuk
memilih blok kode yang akan dieksekusi. Peran struktur kondisi ialah mengatur alur
jalannya program. Program hanya menjalankan statement bernilai benar atau true.
Penulisan perintah dengan menggunakan fungsi Method. Method berisikan barisbaris perintah mendefinisikan proses atau obejek dari suatu classs. Rangkaian
perintah yang harus ditulis untuk memenuhi beberapa keadaan:
1. Mengulang sebagian rutin karena tidak terpenuhnya suatu kondisi.
2. Melanjutkan sebuah pernyataan apabila kondisi terpenuhi.
3. Memilih sebuah pilihan dari beberapa alternative bila sebuah
kondisi terpenuhi.

1.5

Analisa Modul 6 MDI (Multi Document

Interface)
Membuat aplikasi dengan konsep MDI. MDI merupakan aplikasi yang
menampilkan dapat menampilkan beberapa dokumen sekaligus. Terdiri dari jendela
jendala internal berada dalam jendela utama.
Menu dapat memiliki peran penting dalam aplikasi berbasis GUI (Graphical User
Interface). Ia dapat dikatakan sebagai entry point untuk mengakses keseluruhan
fungsional serta fitur aplikasi.

76 | P a g e

1.6

Analisa Modul 7 Form Input Data

Membuat form input data dan koneksi dengan databse MySql. Untuk membuat
aplikasi harus terinstal netbeans dan MySql. Database server yang dapat menyimpan
data yang dapat diakses. Setelah dibuat suatu database, dapat dibuat table basis data
nya, dimana suatu skema basis data terdiri atas banyak table basis data. Di samping
itu, Aplikasi berisi informasi yang benar benar dibutuhkan oleh pengguna tepat saat
pengguna menginginkannya. Dalam system ini kecepatan transaksi akan meningkat
dan me-manage database akan terasa lebih mudah.

1.7

Analisa Modul 8 Form Input Data (Lanjutan)


Apliasi serba guna yang dapat dijalankan pada seluruh mesin yang

memiliki Java Runtime Environment (JRE).


Aplikasi bersifat sederhana sehingga dengan mudah
pengoperasiannya. sebuah peralatan pembangun, teknologi Java menyediakan
banyak tools : compiler, interpreter, penyusun dokumentasi, paket kelas dan
sebagainya.
Tingkat ketelitian dapat dilihat misalnya dalam hal input data. Dapat
menampilkan laporan-laporan yang telah diinput.

77 | P a g e

BAB V
PENUTUP
Kesimpulan
Di dalam struktur bahasa pemrograman terdapat beberapa bagian deklarasi
dan beberapa bagian statement. Adapun bagian deklarasi variabel, deklarasi konstanta
dan deklarasi tipe data.
Awalnya perlu diadakan pengenalan terhadap data data yang akan dimasukan
ke dalam bahasa pemrograman. Deklarasi variabel adalah identifier yang berisi data
yang dapat berubah-ubah nilai nya dalam program. Deklarasi variabel bisa disebut
juga memperkenalkan atau mendaftarkan variabel ke dalam program. Sedangkan
deklarasi konstanta yaitu nilai yang tetap.
Deklarasi tipe data dapat dikelompokan menjadi tiga yaitu tipe data
sederhana, tipe data terstruktur dan dan tipe data pointer. Adapun tipe data sederhana
merupakan tipe data yang paling kecil, yang hanya melibatkan satu item saja, tipe
data terstruktur merupakkan tepe data yang terdiri dari beberapa item data, sedangkan
tipe data pointer digunakan untuk menunjuk pada alamat memori suatu data yang
lain.
Bagian statement merupakan bagian program berisi perintah yang akan
dieksekusi/dijalanakn.

78 | P a g e

Saran
Suatu bahasa pemrograman ditulis secara urut dan sesuai dengan prosedurnya.
Dalam penulisan struktur bahasa pemrograman sebaiknya perlu memperhatikaan tipetipe data yang akan digunakan dalam pembuatan program.
Pada saat bagian deklarasi sebaiknya perlu memperhatikan syarat-syarat atau
ketentuan-ketentuan dalam suatu bahasa pemrograman.
Pada saat bagian penulisan statement dalam suatu bahasa pmrograman
sebaiknya sesuai dengan syarat atau ketentuan dari suatu bahasa pmrograman
masing-masing.

79 | P a g e

DAFTAR PUSTAKA

http://one-inspirations.blogspot.bahasa-pemrograman-java.htmlm1
https://cuepricornz.wordpress.com/tutorial/pemrograman-berorientasi-objek/
http://25eundi2012tii.blogspot.in/2012/11/makalah-bahasapemrograman.html?m=1
http://www.academia.edu/6290401/MODUL_PRAKTIKUM_PEMROGRAM
AN_BERORIENTASI_OBJEK
http://www.google.com/url?q=http://achsan.staff.gunadarma.ac.id/Downloads
/files/14848/pemrograman%2Bberorientasi%2Bobjek.pdf&sa=U&ei=lueaV0
2IKoqoogSEtICYCA&ved=0CBIQFjAD&usg=AFQjCNGhQkvQGMI8KW2
E6luUe3oa0o52UQ

80 | P a g e

Anda mungkin juga menyukai