Post on 26-Dec-2015
description
LAPORAN PRAKTIKUM
BAHASA PEMOGRAMAN JAVA
Nama Praktikan Nomor MahasiswaTanggal
Kumpul
Tanda tangan
Pratikan
BELLA SHELFIALI 1214370319 06 Januari 2015
Nama PenilaiTanggal
KoreksiNilai
Tanda tangan
Dosen
Indri Sulistianingsih
S.Kom
:
Universitas Pembangunan Panca Budi
Fakultas Teknik
Jurusan Sistem Komputer
Medan
2015
Kelas
SI 5 Pagi B
2
KATA PENGANTAR
Puji syukur saya panjatkan kehadirat ALLAH karena berkat rahmatnya
penyusunan laporan 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, 28 desember 2014
BELLA SHELFIALI
DAFTAR ISI
3
KATA PENGANTAR...................................................................................................... 2
DAFTAR ISI..................................................................................................................... 3
BAB I PENDAHULUAN................................................................................................ 5
1.1 Umum............................................................................................................. 5
1.2 Latar belakang................................................................................................ 6
1.3 Tujuan……………......................................................................................... 7
BAB II LANDASAN TEORI.......................................................................................... 8
2.1 Pengenalan Java dan Netbeans..................................................................... 8
2.1.1 Java.................................................................................................. 8
2.1.2 Netbeans........................................................................................... 10
2.1.2.1 Platform Netbeans........................................................... 11
2.1.2.2 NetBeans IDE ................................................................ 11
2.2 operator ………………………….………………………………………. 12
2.3 Class.Objet. dan Method……...…..……………………………................ 13
2.3.1 Class(kelas)……………………………………………….….... 13
2.3.1.1 Anatomi Kelas............................................................... 13
2.3.1.2 Deklarasi Atribute……………………………...….... 14
2.3.2 Objek........................................................................................... 14
2.3.2.1 Siklus Hidup Objek...................................................... 14
2.3.2.2 Penggunaan Objek....................................................... 15
2.3.2.3 Penghancuran Objek………………………….......... .. 15
2.3.3 Method……………………………………………………….. 16
2.3.3.1 Overloading Pada Method ……………………….. 16
2.4 Struktur Perulangan dan Percbangan…………………………………. 17
2.4.1 Perulangan……………………………………………………. 17
2.4.2 Percabangan………………………………………………….. 18
2.5 Pemrograman Berorientasi Objek……………………………………... 19
BAB III PERCOBAAN PRAKTIKUM………………………………………........ 22
3.1 Ruang Lingkup Pemrograman Java………………………………….... 22
3.2 Mengidentfikasi Dasar-dasar Program Java…………………..……... 26
3.3 Struktur Kondisi……… ……………………………………………….. 28
4
3.4 Struktur Kondisi (Lanjutn)……………………………………….…… 31
3.5 MDI(Multi Document Interface)…………………………………….. 38
3.6 Form Input Data……………………………………………………….. 43
3.7 Form Input Data(Lanjutan)……………………………………………. 48
BAB IV ANALISA HASIL PERCOBAAN………………………………………. 56
4.1 Ruang Lingkup Pemrograman Java…………………………………… 56
4.2 Mengidentfikasi Dasar-dasar Program Java…………………..……. 56
4.3 Struktur Kondisi……… ……………………………………………... 57
4.4 Struktur Kondisi (Lanjutn)…………………………………………... 58
4.5 MDI(Multi Document Interface)……………………………………. 58
4.6 Form Input Data……………………………………………………... 58
4.7 Form Input Data(Lanjutan)………………………………………….. 59
PENUTUP………………………………………………………………………. 60
Kesimpulan …………………………………………………………......... 60
Saran ………………………………………………………………………. 60
DAFTAR PUSTAKA………………………………………………..…….………. 61
BAB I
5
(Pendahuluan)
1.1 Umum
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer atau
bahasa pemrograman komputter adalah intruksi standar untuk memerintah komputer.
Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantiks
yang dipakai untuk mendefenisikan program komputer.
Bahasa ini memungkinkan seorang programer dapat menentukan secara persis
data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/
diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
Bahasa mesin, yaitu memberikan perintah kepada komputer dengan memakai kode
bahasa binner, contohnya 01100101100110.
Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan, yaitu
memberi perintah kepda komputer dengan memakai kode-kode singkat, contohnya SUB,
CMP, JMP, JGE,LOOP,dsb.
Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campurann instruksi
dalam kata-kata bahasa manusia dan yang bersifat simbolik, contohnya
{,},?,<<,>>,&&,||,dsb.
Bahasa Tingkat Tinggi yaitu bahasa komputer yang memakai intruksi berasal
daari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb.
Komputer dapat mengerti bahasa manusia itu diperlukan program compiler atau
interpreter.
6
1.2 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.
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.
7
1.3 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.
BAB II
8
(Landasan Teori)
2.1 Pengenalan Java dan Netbeans
2.1.1 Java
Java adalah bahasa pemrograman berorientasi objek murni yang dibuat
berdasarkan kemampuan-kemampuan terbaik bahasa pemrograman objek sebelumnya
(C++, Ada, Simula). Java diciptakan oleh James Gosling, developer dari Sun
Microsystems pada tahun 1991.
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.
Karakteristik Java antara lain :
- Sederhana (Simple)
- Berorientasi Objek (Object Oriented)
- Terdistribusi (Distributed)
- Interpreted
- Robust
- Aman (Secure)
- Architecture Neutral
- Portable
- Performance
- Multithreaded
- Dinamis
Macam-macam Java 2 Software Developer Kit (J2SDK) antara lain :
- J2SE (Java 2 Standard Edition)
- J2EE (Java 2 Enterprise Edition)
- J2ME (Java 2 Micro Edition)
Cara kerja Java dapat digambarkan sebagai berikut :
9
Java mempunyai platform yaitu :
- Java Virtual Machine (Java VM)
- Java Application Programming Interface (Java API)
Aplikasi-aplikasi java antara lain :
- Stand alone
- Applets
- Aplikasi berbasis Windows (GUI)
- Java Servlet
- Java Server Pages (JSP)
- Java Beans dan Enterprise Java Beans
- Java Micro Edition
-Penulisan program
o Menulis program
Struktur program java yaitu :
Deklarasi package dan import
class NamaKelas {
<pernyataan>
10
}
// Kelas pertama
class NamaKelasLain {
<pernyataan>
}
Dapat ditulis dalam satu file .java:
Berisi satu kelas
Berisi beberapa kelas
Ditulis dalam beberapa file .java:
Satu file satu kelas
Satu file banyak kelas
Hanya boleh ada satu fungsi utama pada setiap program objek.
o Kompilasi
javac <namafile.java>
Contoh:
javac HelloWorld.java
o Eksekusi
java <namafile hasil kompilasi> [<argumen baris perintah>]
Contoh:
java HelloWorld
2.1.2 Netbeans
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 berinetrasi dengan netbeans open
API dan file manifestasi yang mengidentifikasi nya sebagai modul. Aplikasi yang
dibangun dengan modul-modul dapat dikembangkan menambahkan modul-modul baru.
Karena modul dapat dikembangkan secara independent, aplikasi berbaris platform
netbeans dapat dengan mudahdikembangkan oleh piihak ketiga secara mudah dan
powerfull.
11
2.1.2.1 Platform NetBeans
Platform NetBeans adalah framework yang dapat digunakan kembali (reusable)
untuk menyederhanakan pengembangan aplikasi desktop. Ketika aplikasi berbasis
platform NetBeans dijalankan, kelas Main dari platform dieksekusi. Modul-modul yang
tersedia ditempatkan di sebuah registry di dalam memori, dan tugas startup modul
dijalankan. Secara umum, kode modul dimuatkan ke dalam memori hanya ketika ia
diperlukan.
Aplikasi dapat menginstal modul secara dinamis. Aplikasi dapat memasukkan
modul Update Center untuk mengijinkan pengguna aplikasi men-download digitally-
signed upgrade dan fitur-fitur baru secara langsung ke dalam aplikasi yang berjalan.
Penginstalan kembali sebuah upgrade atau rilis baru tidak memaksa pengguna untuk
men-download keseluruhan aplikasi lagi.
Platform NetBeans menawarkan layanan-layanan yang umum bagi aplikasi
desktop, mengijinkan pengembang untuk fokus ke logika yang spesifik terhadap aplikasi.
Fitur-fitur yang disediakan oleh platform NetBeans:
• Manajemen antarmuka (misal: menu & toolbar)
• Manajemen pengaturan pengguna
• Manajemen penyimpanan (menyimpan dan membuka berbagai macam data)
• Manajemen jendela
• Wizard framework (mendukung dialog langkah demi langkah).
2.1.2.2 NetBeans IDE
NetBeans IDE adalah IDE ( integrated development environment ) open source
yang ditulis sepenuhnya dengan bahasa pemrograman Java menggunakan platform
NetBeans. NetBeans IDE mendukung pengembangan semua tipe aplikasi Java (J2SE,
web, EJB, dan aplikasi mobile). Fitur lainnya adalah sistem proyek berbasis Ant, kontrol
versi, dan refactoring.
2.2 Operator
12
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.
a. Operator Aritmatika
Sama halnya dengan semua bahasa pemrograman, Java menyediakan operator-
operator 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.
2.3 Class, Object dan Method
13
2.3.1 Class (Kelas)
Kelas merupakan sarana pengkapsulan kumpulan data dan kumpulan method
java. Kumpulan data dan method tersebut berwujud baris-baris program java.
Kumpulan method berfungsi untuk mengoperasikan kumpulan data dalam kelas
tersebut. Kelas digunakan untuk membuat objek, dan berperan sebagai tipe data dari
objek.
2.3.1.1 Anatomi Kelas
Bentuk umum struktur anatomi kelas sebagai berikut :
(modifier1) class NamaKelas (modifier2) {
classbody
}
Classbody terdiri dari satu atau beberapa attribute, constructor, dan method.
Modifier 1 dan 2 pada anatomi kelas, sifatnya optional, digunakan berdasarkan
kebutuhan. Modifier menunjukkan sifat-sifat tertentu dari kelasnya, sifatsifat dari
methodnya, atau sifat-sifat attributenya. Ada 10 keyword yang digunakan sebagai
modifier 1 dan dikelompokkan menjadi :
1. Modifier akses (public, protected, default, private)
2. Modifier final
3. Modifier static
5. Modifier synchronized
6. Modifier native
7. Modifier storage (transient, volatile)
Modifier yang memiliki sifat saling kontradiktif yaitu static dan abstract.
Sementara static tidak boleh memberi sifat pada interface, dan keyword super tidak boleh
digunakan pada method static.
Ada 2 keyword yang sering digunakan sebagai modifier 2, yaitu extends dan
implements.
2.3.1.2 Deklarasi Attribute (Variabel Anggota Data)
Deklarasi diletakkan di dalam classbody (di luar method). Bentuk umum
14
deklarasi attribute :
[modifier] tipedata namavariabel;
[public] [static] final tipedata NAMA_KONSTANTA = nilai;
Contoh :
public class CircleClass {
public static final double PI = 3.14159265358979323846;
public double x, y, r;
// dan seterusnya
}
2.3.2 Object
Objek adalah sebuah pointer. Objek dibentuk/dicetak oleh sebuah class java.
Proses pembentukan objek dari suatu class ini disebut dengan instansiasi (instance).
Setelah dibentuk oleh suatu class maka objek akan terus berada di memory dan siap
dipakai sampai kemudian dihancurkan.
2.3.2.1 Siklus Hidup Objek
Suatu objek di java, terlebih dahulu harus dideklarasikan, setelah itu
mengalami pembuatan, penggunaan, kemudian penghancuran.
Deklarasi dan Pembuatan/Instansiasi Objek
Ilustrasi deklarasi objek :
MyClass mc; MyClass
Ditentukan variabel mc dengan tipe MyClass, dalam deklarasi mc masih
berupa pointer dan belum menunjuk alokasi memori. Keyword new diperlukan untuk
membentuk objek tsb sekaligus memanggil constructor.
Ilustrasi pembentukan objek :
Mc = new MyClass() MyClass MyClass
~var1 : int
~var2 : String
Ada 4 cara untuk melakukan deklarasi dan pembuatan objek (ingat NamaKelas
sama dengan NamaConstructor), yaitu :
15
1. Cara 1:
NamaKelas namaObjek; // deklarasi
namaObjek = new NamaConstructor(); // pembuatan
Deklarasi dan pembuatan objek boleh jadi satu dalam suatu kelas. Deklarasi dan
pembuatan objek boleh dipisah di kelas yang berbeda, misalnya deklarasi objek di
method main() pada kelas1, sedangkan pembuatan/instansiasi objek berada pada kelas2.
2. Cara2 :
NamaKelas namaObjek = new NamaConstructor();
Artinya dua proses deklarasi dan pembuatan dijadikan satu. Cara inilah yang nanti
akan banyak kita pakai dalam mempelajari materi buku ini.
3. Cara3 :
new NamaConstructor();
Cara ini objek diinstansiasi tanpa nama, tujuannya hanya untuk menjalankan
constructor.
4. Cara4 :
New NamaKelas(”…..”).namaMethod();
Cara ini objek diinstansiasi dengan nama kelas sekaligus menjalankan
method tertentu dalam objek tersebut.
2.3.2.2 Penggunaan Objek
Penggunaan objek sebenarnya untuk memanggil method yang merupakan sifat
objek tersebut. Bentuk umum :
namaObjek.namaMethod([daftarNilaiParameter]);
2.3.2.3 Penghancuran Objek
Teknik yang digunakan java untuk menangani objek yang sudah tidak
diperlukan lagi disebut garbage collection. Objek yang sudah tidak diperlukan lagi
akan terdeteksi oleh JVM, sehingga secara otomatis dihancurkan oleh garbage
collector (bukan oleh programmer).
2.3.3 Method
Method merupakan tingkah laku dari suatu objek, jika bersifat static berarti
16
tingkah laku semua objek dalam kelas tersebut. Method diletakkan di dalam
classbody (sebaiknya tidak diletakkan dalam method lain).
Bentuk umum method :
[modifier] tipe_return_value namaMethod(tipe parameter) {
methodbody;
}
Modifier boleh lebih dari satu (dipisah oleh spasi). Pasangan tipe dan parameter
dapat lebih dari satu (dipisah oleh koma).
Baris-baris program java saat dijalankan dimulai dari method main().
Bentuk umum method main() adalah sebagai berikut :
[modifier] tipe_return_value main(String args[]) {
methodbody
}
Ada dua sintaks pemanggilan suatu method :
namaObjek.namaMethod([nilaiParamater]);
namaKelas.namaMethod([nilaiParamater]);
Tidak semua member (class, attribute, dan method) dapat diakses method,
Method dasar ada dua jenis yaitu getter() dan setter(). Method jenis getter()
merupakan method-method yang berfungsi untuk mendapatkan informasi dari class,
sedangkan jenis setter() berfungsi untuk menentukan isi atribut (variabel) dalam class.
2.3.3.1 Overloading pada Method
Overloading adalah mendefinisikan dua atau lebih method di dalam satu
kelas yang sama, dengan nama yang sama, namun dengan deklarasi parameter
yang berbeda. Overloading disini bukan overloading terhadap operator
sebagaimana dalam bahasa C++.
Java interpreter mampu membedakan method mana yang dieksekusi
dengan mengenali tipe parameter yang dilewatkan ke method, serta mengenali
return valuenya.
2.4 Struktur Perulangan dan Percabangan
17
2.4.1 Perulangan
Perulangan di dalam Java terdapat 3 macam, yaitu for, while dan do-while.
Perulangan for dipakai pada saat kita melakukan perulangan dengan jumlah yang
sudah diketahui pasti.
Sintaks dari for adalah sebagai berikut:
For (inisialisasi; kondissi; perintah) {
Pernyataan;
}
Perulangan while dipakai pada saat kita melakukan perulangan dengan jumlah
yang belum diketahui pasti. Pernyataan pada while akan dikerjakan setelah
pengecekan kondisi pada while bernilai true.
Sintaks dari while adalah sebagai berikut :
while (kondisi) {
Pernyataan;
}
Perulangan do-while dipakai pada saat kita melakukan perulangan dengan jumlah
ynga belum diketahui pasti. Pernyataan pada do akan dikerjakan terlebih dahulu,
baru setelah itu dilakukan pengecekan kondisi pada while.
Sintaks dari do-while adalah sebagai berikut:
do {
Pernyataan;
} while (kondisi);
Kita dapat memberikan kondisi tertentu pada saat terjadi perulangan. Kondisi
yang mungkin terjadi pada perulangan terdapat 2 macam, yaitu break dan continue. Break
menyababkan suatu kondisi untuk keluar dari perulangan . Sedangkan continue
menyebabkan suatu kondisi untuk melanjutkan ke tahapan selanjutnya pada perulangaan.
2.4.2 Percabangan
18
Percabangan di dalam java terdapat 2 macam, yaitu dengan memakai if dan
switch.
Percabangan if dipakai jika kita menginginkan suatu penyataan itu dilakukan
dengan syarat tertentu yang bernilai benar.
Sintaks dari if adalah sebagai berikut :
if (ekspresi_boolean) {
Pernyataan1;
}
Pernyataan1 akan dilakukan kalau ekpresi boolean bernilai true.
Percabangan if-else dipakai untuk mengeksekusi salah satu dari pernyataan dari
syarat tertentu yang pada if yang dapat bernilai benar atau salah.
Sintaks dari if-else adalah sebagai berikut:
if (ekspresi_boolean) {
Pernyataan1;
} else {
Pernyataan2;
}
Pernyataan1 akan dilakukan kalau ekspresi_boolean bernilai true. Kalau
ekspresi_boolean false, maka Pernyataan2 akan dikerjakan.
Percabangan else-if dipakai untuk memberikan kondisi tertentu pada bagian else.
Sintaks dari else if adalah sebagai berikut:
If(ekspresi_boolean1) {
Pernyataan1;
} else if (ekspresi_boolean2) {
Pernyataan2;
}
Ketika ekspresi_boolean bernilai false, maka alur program akaan menuju ke
bagian else. Selanjutnya Pernyataan2 diatas akan dikerjakan kalau ekspresi_boolean2
bernilai true.
19
Percabangan switch dipakai pada saat kita ingin memberikan kondisi dengan
beberapa syarat yang identik yang masing-masing mempunyai pernyataan yang
berbeda-beda. Pada java nilai yang dilewatkan pada switch harus bertipe int,
short, byte atau char.
Sintaks dari swith dalah sebagai berikut:
Switch (ekspresi) {
case nilai1; Pernyataan1;
break;
case nilai2; Pernyataan2;
break;
default: Pernyataan3;
}
Ketika ekspresi bernilai nilai1, maka alur program akan mengeksekusi
Pernyataan1. Selanjutnya break menyababkan alur program keluar dari daerah switch.
Kalau ekspresi bernilai nilai2, maka alur program akan mengeksekusi Pernyataan2.
Apabila ekspresi mempunyai nilai yang tidak sama dengan nilai1 dan nilai2, maka alur
program akan menuju ke bagian default dan kemudian mengeksekusi Pernyataan3.
2.5 Pemrograman Berorientasi Objek
Pemrograman berorientasi objek merupakan model pemrograman yang
berorientasi pada suatu objek tertentu, semua data dan fungsi dibungkus dalam suatu
objek. Dalam Pemrograman berorientasi objek kita juga harus mengenal kelas, objek, dan
akses modifier .
OOP berputar pada konsep dari object sebagai dasar element dari program anda.
Ketika kita membandingkan dengan dunia nyata, kita dapat menemukan beberapa objek
disekitar kita, seperti mobil, singa, manusia dan seterusnya. Sifat / attributnya dan
tingkah lakunya.
Deklarasi class
Dapat dilakukan dengan sintaks sebagai berikut:
<modifier> class <nama_class> {
[deklarasi atribut]
20
[deklarasi_konstruktor]
[deklarasi_metode]
Deklarasi atribut
Dapat dilakukan dengan sintaks sebagai berikut:
<modifier> <tipe> <nama_atribut> ;
Deklarasi metode
Dapat dilakukan dengan sintaks sebagai berikut:
<modifier> <return type> <nama_metode> {[daftar_argumen]}
{
[statement]
}
Pengaksesan anggota objek
Untuk dapat mengakses anggota-anggota dari suatu objek, maka harus dibuat
instance dari class tersebut terlebih dahulu. Berikut ini adalah contoh pengaksesan
anggota-anggota dari kelas siswa:
Public class siswa {
Pubic static void main(String args[]} {
Siswa it=new siswa();
it.nrp=5;
it.nama”Andi”;
it.info();
}
}
Dasar-dasar pemrograman berorientasi objek
Information hiding
Dapat menyembunyikan information dari suatu class sehingga anggota-anggota
class tersebut tidak dapat diakses dari luar. Adapun caranya adalah cukup dengan
memberikan akses kontrol private ketika mendeklarasikan suatu atribut atau
method.
21
Enkapsulasi
Enkapsulasi adalah suatu cara untuk menembunyikan implementasi detail dari
suatu class. Enkapsulasi mempunyai dua hal mendasar, yaitu:
1. Information hiding
2. Menyediakan suatu perantara (method) untuk pengaksesan data.
Constructor
Konstruksi adalah suatu method yang pertama kali dijalankan pada saat
pembuatan suatu objek. Konstruktor mempunyai ciri yaitu :
1. Mempunyai nama yang sama dengan nama class
2. Tidak mempunyai return type ( seperti void, int, double, dan lain-lain)
Overloading constructor
Suatu class dapat mempunyai lebih dari 1 konstruktor dengan syarat daftar
parameternnya tidk boleh ada yang sama.
22
BAB III
(Percobaan / Praktikum)
3.1 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.
Pada default package klik
kanan New, kemudian
pilih JFrame Form
23
Beri nama frame contoh
“Modul2" dan nama package .
Jangan menggunakan spasi
dalam setiap penamaan dalam
project java.
kemudian klik Finish
Desain Frame seperti pada gambar berikut :
24
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
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
Model : Pria, wanita
cbojk
JButton1 Text variable name btnproses
JLabel7 text Biodata
JLabel8 NPM
Variable name lblnpm
JLabel9 Nama
Variable name lblnama
JLabel10 Jenis Kelamin
Variable name Lbljk
JLabel11 Tanggal Lahir
Variable name lbltl
JLabel12 Alamat
Variable name lblalamat
JLabel13 Hobi
25
Variable name lblhobi
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
26
3.2 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
JButton2 -
Variable name btnkurang
JButton3 X
Variable name btnkali
JButton4 /
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());
27
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);
}
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
HASIL MODUL 3
28
3.3 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 :
Berikut adalah propertise
Variable / Item-item yang diambil dari pallete sesuai pada desain frame diatas:
Palette 1 Edit Text Palette 2 Variable name Propertiies
Desktop Pane Background : Green
jLabel1Nama
PembeliText Field Txtnama -
jLabel2 Status Combo Box cbostatusModel : Umum,
Member
jLabel3 Jenis Barang Combo Box CbojenisModel : Pilih, iPad,
iPhone, iPod
jLabel4 Harga Text Field Txtharga Editable : False
jLabel5 Jumlah Text Field txtjumlah -
jLabel6 Button BtnbayarEvent –
ActionPerformed
jLabel7 Diskon Text Field txtdiskon Editable : False
jLabel8 Total Bayar Text Field Txttotal Editable : False
Pada Comco Box jenis barang. Tuliskan kode program berikut:Caranya klik
kanan cbojenis => Event=>Action=>ActionPerformed
29
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;
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
30
HASIL MODUL 4
3.4 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
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
31
JTextField1 Text
Variable Name
txtnip
JTextField2 Text
Variable Name
txtnama
JTextField3 Text
Variable Name
txtgajipokok
JTextField4 Text
Variable Name
txttunjanganistri
JTextField5 text
Variable Name
txtjumlahanak
JTextField6 text
Variable Name
txttunjangananak
JTextField7 Text
Variable Name
txtgajikotor
JTextField8 text
Variable Name
txtpajak
JTextField9 text
Variable Name
txtgajibersih
JRadioButton1 text
Variable Name
Menikah
Opsi1
JRadioButton text
Variable Name
Belum Menikah
Opsi2
JButtonGroup1 -
JButton1 text
Variable Name
Clear
btnbersih
JButton2 text
Variable Name
Hitung
btnhitung
Variable name
Model
Cmbjabatan
Direktur
Manager
32
JComboBox Kabag
Sekretaris
Karyawan
Office Boy
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
/**
* 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
33
//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:
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 {
34
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.
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.
Klik kanan pada JFrame setelah itu pilih Events Windows
35
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();
}else{
BelumMenikah();
}
}
klik kanan jRadioButton1 Menikah (opsi1) lalu
events=>Action=>ActionPerformed:
private void opsi1ActionPerformed(java.awt.event.ActionEvent evt) {
Menikah();
}
36
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();
}
Compile (F9) dan Run Program melalui menu Run Run (Shift + F6).
Isikan NIP, Nama, dan Pilih Jabatan, Status, Jika sudah Menikah isikan Jumlah
anak. Setelah itu klik tombol Hitung maka total gaji akan ditampilkan.
3.5 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.
37
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.
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();
}
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);
38
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);
}
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.
39
Buka IFModul2 yang sebelumnya kemudian pilih navigator item
jInternalFrame klik kanan Paste.
Lakukan hal yang sama (ikuti langkah-langkah sebelum ny) untuk membuat file
jInternalFrame Form untuk IFModul3, IFModul4, IFModul5.
A t u r P r o p e r t i s e p a d a m a s i n g - m a s i n g I n t e r n a l F r a m e , p i l i h n a v i g a t o r i t e m
jInternalFrame klik kanan Propertise. Cheklist Closable sehingga bernilai
true.
Kembali pada FormUtama kemudian berikan perintah-perintah untuk memanggil
form-form yang telah dibuat diatas.
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);
}
40
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();
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);
}
Run Program melalui FormUtama menu Run Run File (Shift + F6).
41
graman Java UNPAB
3.6 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
42
kanan pakage koneksi, New -> Java Class. Beri nama ClassDB, 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");
}
}
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:
43
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
Variable name
txtid
JTextField2 text
Variable name
Txtnama
JTextField3 text
Variable name
Txthp
JTextArea text
Variable name
Txtalamat
JButton1 text
Variable name
Save
Btnsave
JButton2 text
Variable name
Clear
Btncler
Susunan posisi dan
ukuran komponen
seperti pada gambar
berikut:
Selanjutnya Ketikkan kode berikut ini:
public FormInputData() {
initComponents();
bacaId();
txtid.setEnabled(false);
44
btnsave.setEnabled(false);
}
private void bacaId() {
int kode = 0;
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(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()))
|| ("".equals(this.txthp.getText())) ||
("".equals(this.txtalamat.getText()))) {
JOptionPane.showMessageDialog(this, "Lengkapi data");
} else {
45
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 () {
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:
46
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.
3.7 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
47
nama koneksi, kemudian klik Finish.
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”;
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
48
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
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
Variable name
Bayar
Btnbayar
JButton2 Text Simpan
49
Variable name
BtnSimpan
.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();
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 {
50
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) {
}
}
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) {
}
51
}
private void simpan(){
String iv=this.txtinvoice.getText();
String tgl=this.txttanggal.getText().toString();
String id=this.txtid.getText();
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);
p.setString(5, status);
p.setString(6, barang);
p.setString(7, harga);
p.setString(8, jumlah);
p.setString(9, diskon);
52
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);
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");
53
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”){
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:
private void btnsimpanActionPerformed(java.awt.event.MouseEvent evt) {
//TODO add your handling code here:
54
simpan();
bersih();
}
Kompile dan jalankan dari menu Run -> Run File atau tekan Shift + F6.
BAB IV
(Analisa Hasil Percobaan)
4.1 Analisa 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.
Kode program java umumnya memiliki susunan sebagai berikut :
//Daftar paket yang digunakan dalam program
import namapaket;
//Membuat kelas
public class namakelas
{
//Metode utama
Public statis void main(String[] args)
{
55
Perintah;
................................
}
}
4.2 Analisa Dasar Pemrograman Java
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 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
56
Operator mengikuti bermacam-macam prioritas yang pasti sehingga
compiler nya akan tahu yang operator untuk dijalankan terlebih
dahulu.
4.3 Analisa Struktur Kondisi
Struktur kontrol keputusan adalah statement dari Java yang mengijinkan
user untuk memilih dan mengeksekusi blok kode dan mengabaikan blok kode
yang lain. statement dieksekusi setelah statement sebelumnya dengan urutan
tertentu. Pada bagian ini, kita mempelajari tentang struktur kontrol yang bertujuan
agar kita dapat menentukan urutan statement yang akan dieksekusi.
Keterangan :
o Menggunakan struktur kontrol keputusan (if, else, switch) yang digunakan
untuk memilih blok kode yang akan dieksekusi.
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
4.4 Analisa Struktur Kondisi (Lanjutan)
Peran struktur kondisi ialah mengatur alur jalannya program. Program
hanya menjalankan statement bernilai benar atau true.
Rangkaian perintah yang harus dituli 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.
57
4.5 Analisa MDI(Multi Document Interface)
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.
4.6 Analisa Input Data
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.
4.7 Analisa 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.
58
PENUTUP
Kesimpulan
Bahasa pemrograman digunakan oleh programmer. 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.
Saran
Untuk menciptakan suatu bahasa pemrograman yang baik harus memenuhi
beberapaa kriteria yaitu:
Suatu bahasa pemrograman ditulis secara urut dan sesuai dengan prosedurnya.
Dalam penulisan struktur bahasa pemrograman sebaiknya perlu memperhatikaqn tipe-tipe
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.
59
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-bahasa-pemrograman.html?
m=1
http://www.academia.edu/6290401/
MODUL_PRAKTIKUM_PEMROGRAMAN_BERORIENTASI_OBJEK
http://www.google.com/url?q=http://achsan.staff.gunadarma.ac.id/Downloads/
files/14848/pemrograman%2Bberorientasi
%2Bobjek.pdf&sa=U&ei=lueaV02IKoqoogSEtICYCA&ved=0CBIQFjAD&usg=
AFQjCNGhQkvQGMI8KW2E6luUe3oa0o52UQ