Senin, 08 Desember 2014

Kalkulator Sederhana


KALKULATOR SEDERHANA (Konsep MVC)

Langkah pertama membuat kalkulator sederhana dengan Java NetBeans adalah

1. Buat New Project pada NetBeans dengan nama Kalkulator
2. Buat 3 Package, masing - masing diberi nama Kalkulator, Model, dan View
3. Buat kelas pada masing - masing package, pada Kalkulator buat kelas Main, pada Model kelasKalkulatorModel, dan pada View buat JFrame dengan nama KalkulatorView.



1. Buat tampilan kalkulator seperti di bawah ini pada JFrame KalkulatorView yang ada di Package view





Source Code pada JFrame KalkulatorView

Setelah design tampilan kalkulator selesai, klik pada Source yang ada disamping Design

Note : Double Klik pada semua JButton yang ada pada Design













2. SOURCE CODE PADA KELAS MAIN



3. SOURCE CODE PADA KELAS KalkulatorModel



Exception Handling Pada Java 2


Error dalam pemrograman dibagi dalam tiga katagori yaitu syntax error (saat kompilasi), run time error, dan logic error (output belum sesuai dengan yang diharapkan).
Exception dipicu oleh run time error dan digunakan sebagai sarana melaporkan kondisi-kondisi kesalahan.

1.2. Jenis-Jenis Exception

Dalam java, exception merupakan objek dari subkelas yang diturunkan dari kelas Throwable. KelasThrowable ini terdapat dalam package java.lang.object.

1.2.1. Kelompok Kelas Error

Error ini bersifat fatal sehingga sistem tidak dapat dimanipulasi untuk diperbaiki, contoh kelas:LinkageError, VirtualMachineError, dan AWTError.

1.2.2. Kelompok Kelas Exception

Jenis error ini masih dapat diantisipasi dengan menyisipkan statement tambahan untuk mendeteksi data yang berpotensi menimbulkan error.

Ada kelompok exception yang diperiksa oleh interpreter, apakah akan ditangani atau dilempar, namun ada pula exception yang akan tidak diperiksa interpreter.

Disamping itu programmer dibolehkan membuat exception sendiri dengan cara extends atauimplements kelas Exception.

Checked Exception

No

Exception

Deskripsi

1

ClassNotFoundException

Kelas tidak ditemukan

2

CloneNotSupportedException

melakukan clone objek yang tidak mengimplementasikan interfaceCloneable

3

IllegalAccessException

Pengaksesan ke kelas ditolak

4

InstantiationException

Menciptakan objek dari kelas abtract ataupun dari interface

5

InterruptedException

Thread telah diinterupsi oleh thread lain

6

NoSuchFieldException

Field yang diminta tidak ada

7

NoSuchMethodException

Method yang diminta tidak ada

Uncheked Exception

No

Exception

Deskripsi

1

AritmaticException

Kesalahan Aritmatik seperti pembagian dengan nol

2

ArrayIndexOutBoundsException

Index array di luar batas

3

ArrayStoreException

Pemberian nilai ke elemen array tidak sesuai dengan tipenya

4

ClassCastException

Cast yang tidak sah

5

IllegalArgumentException

Argument illegal

6

IllegalMonitorStateException

Operasi monitor illegal seperti menunggu di thread yang tidak terkunci

7

IllegalStateException

Lingkungan atau aplikasi state yang tidak benar

8

IllegalThreadStateException

Operasi yang diminta tidak kompatibel dengan state thread saat itu

9

IndexOutOfBoundException

Indeks di luar batas

10

NegativeArraySizeException

Array diciptakan dengan ukuran negatif

11

NullPointerException

Penggunan null yang tidak sah

12

NumberFormatException

Konversi yang tidak sah dari string ke format numerik

13

SecurityException

Melanggar

aturan security

14

StringIndexOutOfBounds

Index di luar batas string

15

UnsupportedOperationException

Ditemukan operasi yang tidak didukung

Dua Exception yang belum dikelompokkan, yaitu IOException dan AWTException.

1.3. Mengantisipasi Exception

Diperlukan tiga langkah berikut ini untuk mengantisipasi exception :
Mendeklarasikan Exception

Bentuk umum :

[modifier] returntype namaMethod() throws tipeException{

}

Contoh :

public void operasiMatematika() throws IOException,

ClassNotFoundException {

}

public void beriPinjaman() throws TolakException{


Melempar Exception

Bentuk umum :

TipeException namaObjek = new TipeException;

throw namaObjek;

Diringkas menjadi :

throw namaObjek TipeException;

atau

throw new TipeException();

Contoh :

TolakException t = new TolakException(”lagi pelit”);

throw t;

Diringkas menjadi :

throw new TolakException(”lagi pelit!”);
Menangkap Exception

Penangkapan runtime error, dapat mempunyai beberapa blok yang menangkap setiap jenis exception.

Bentuk umum :

try {

// pemanggilan method yg mungkin menghasilkan exception

// blok statement yg mungkin menghasilkan exception

}

catch(TipeException1 namaObjek) {

// penanganan salah-satu jenis exception

}

catch(TipeException2 namaObjek) {

// penanganan salah-satu jenis exception

}

catch(TipeExceptionN namaObjek) {

// penanganan salah-satu jenis exception

}

finally {

// blok yang harus dieksekusi

}

Jika pada blok try tidak terjadi exception, maka blok catch tidak ada yang dieksekusi dan segera blokfinally yang dieksekusi.

Jika terjadi exception pada blok try, maka salah satu blok catch dieksekusi, kemudian blok finallydieksekusi.

1.4. Mekanisme Mengantisipasi Exception

Ada tiga kemungkinan skenario exception, pertama jika tidak terjadi exception (tidak ada blok catch yang dieksekusi), kedua jika exception terjadi pada blok method tunggal (salah-satu blok catch dieksekusi), ketiga jika terjadi exception pada blok tersarang.

Method A {



try {



memanggil method B;

}

catch(Exception1 obj1) {

proses Obj1;

}



}

Method B {



try {

…;

}

catch(Exception2 obj2) {

proses Obj2;

}



}

1.5. Menampilkan Pesan Exception

Beberapa method standard yang dapat digunakan untuk menampilkan pesan exception merupakan anggota dari kelas java.lang.Throwable.

No

Method Pesan Exception

Deskripsi

1

getMessage()

Mengembalikan nilai string yang berisi pesanrinci tentang objek Throwable yang mengalami exception

2

toString()

Mengembalikan nilai string yang berisi pesansingkat tentang objek yang mengalami exception

3

getLocalizedMessage()

Menampilkan pesan exception lokal (yang terjadi pada subkelas saja)

4

printStackTrace()

Method ini bersifat void, dan hanya mencetak informasi tentang objek Throwable.

UML Tentang Membeli Baju Pada Java 2

UNIFIED MODELLING LANGUAGE (UML)



Unified Modelling Language (UML) adalah sebuah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi, merancang, dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.

Dengan menggunakan UML dapat dibuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET.

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax atau semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak.

SOURCE CODENYA

1. Buat Kelas Pembeli

public class Pembeli {


String Nama;

String Alamat;

String Umur;

public void setNama(String Nama){

this.Nama = Nama;

}

public void setAlamat (String Alamat){

this.Alamat = Alamat;

}

public void setUmur(String Umur){

this.Umur = Umur;

}

public String getNama(){

return Nama;

}

public String getAlamat(){

return Alamat;

}

public String getUmur(){

return Umur;

}

}

2. Buat Kelas Barang Dibeli

Dalam kelas Barangdibeli di extends ke kelas Pembeli, karena yang membeli barang adalah pembeli.

public class Barangdibeli extends Pembeli{


String Merk;

String Ukuran;

String Warna;

public void setMerk(String Merk){

this.Merk = Merk;

}

public void setNomor(String Nomor){

this.Nomor = Nomor;

}

public void setWarna(String Warna){

this.Warna = Warna;

}

String getMerk(){

return Merk;

}

String getUkuran(){

return Ukuran;

}

String getWarna(){

return Warna;

}

}

3. Kelas Baju

public class Baju {


String JenisBaju;

String HargaBaju;

public void setJenisBaju(String JenisBaju){

this.JenisBaju = JenisBaju;

}

public void setHargaBaju(String HargaBaju){

this.HargaBaju = HargaBaju;

}

String getJenisBaju(){

return JenisBaju;

}

String getHargaSepatu(){

return HargaBaju;

}

}

4. Kelas DaftarBarang

public class DaftarBarang {

BarangDibeli beli;

Sepatu barang;

void DataMasuk(BarangDibeli beli, Baju barang)

{

beli = beli;

barang = barang;

}

void cekData()

{

System.out.println("Nama = "+beli.getNama());

System.out.println("Alamat = "+beli.getAlamat());

System.out.println("Umur = "+beli.getUmur());

System.out.println("Jenis Baju = "+barang.getJenisBaju());

System.out.println("Harga Baju = "+barang.getHargaBaju());

System.out.println("Merk = "+beli.getMerk());

System.out.println("Ukuran = "+beli.getUkuran());

System.out.println("Warna = "+beli.getWarna());

}

}

5. Kelas Main

public class Main {

public static void main (String[]args){


Barangdibeli Yudhies= new Barangdibeli();

Baju Satria = new Baju();

DaftarBarang FWS = new DaftarBarang();

Yudhies.setNama("Yudhiestira Farizza Win Satria");

Yudhies.setAlamat("Tegal");

Yudhies.setUmur("19 tahun");

Yudhies.setMerk("Nike");

Yudhies.setWarna("Blue Red");

Yudhies.setUkuran("XL");

Satria.setJenisBaju("Running");

Satria.setHargaBaju("Rp 110000");

FWS.DataMasuk(Yudhies, Satria);

FWS.cekData();

}

}

UML Tentang Tabungan Pelajar Pada Java 2

UNIFIED MODELLING LANGUAGE (UML)


Unified Modelling Language (UML) adalah sebuah “bahasa” yang telah menjadi standar dalam industri untuk visualisasi, merancang, dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah standar untuk merancang model sebuah sistem.

Dengan menggunakan UML dapat dibuat model untuk semua jenis aplikasi piranti lunak, dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, serta ditulis dalam bahasa pemrograman apapun. Tetapi karena UML juga menggunakan class dan operation dalam konsep dasarnya, maka ia lebih cocok untuk penulisan piranti lunak dalam bahasa-bahasa berorientasi objek seperti C++, Java, C# atau VB.NET.

Seperti bahasa-bahasa lainnya, UML mendefinisikan notasi dan syntax atau semantik. Notasi UML merupakan sekumpulan bentuk khusus untuk menggambarkan berbagai diagram piranti lunak.

SOURCE CODENYA

1. Public Class Orang

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Orang;

/**

*

* @author User

*/

public class Orang {

private String NamaOrang;

private String AlamatOrang;

private String NoKTPOrang;

void setNamaOrang (String Nama){

this.NamaOrang = Nama;

}

String getNamaOrang(){

return NamaOrang;

}

void setAlamatOrang (String Alamat){

this.AlamatOrang = Alamat;

}

String getAlamatOrang(){

return AlamatOrang;

}

void setNoKTPOrang (String NoKTP){

this.NoKTPOrang = NoKTP;

}

String getNoKTPOrang(){

return NoKTPOrang;

}

public static void main(String[] args){

}

}

2. Public Class Rekening

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Rekening;

/**

*

* @author User

*/

public class Rekening {

double Saldo;

String NoRekening;

public double getDebet(double jumlah){

Saldo += jumlah;

return Saldo;

}

public double getKredit(double jumlah){

Saldo -= jumlah;

return Saldo;

}

}

3. Public Class Tabungan Pelajar

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package TabunganPelajar;

/**

*

* @author User

*/

public class TabunganPelajar {

private static class Pelajar {

public Pelajar() {

}

private String getNoKTPOrang() {

throw new UnsupportedOperationException("Not yet implemented");

}

private String getAlamatOrang() {

throw new UnsupportedOperationException("Not yet implemented");

}

private String getNamaOrang() {

throw new UnsupportedOperationException("Not yet implemented");

}

}

private static class Rekening {

private double Saldo;

public Rekening() {

}

}

Rekening Rekeningku;

Pelajar Nasabah;

public void daftar(Rekening RekeningNasabah, Pelajar NasabahBaru){

Rekeningku = RekeningNasabah;

Nasabah = NasabahBaru;

}

public double CekSaldo(){

return Rekeningku.Saldo;

}

public void TampilakanInfo(){

System.out.println("Nama ="+Nasabah.getNamaOrang());

System.out.println("Alamat ="+Nasabah.getAlamatOrang());

System.out.println("No KTP ="+Nasabah.getNoKTPOrang());

System.out.println("Saldo ="+CekSaldo());

}

}

4. Public Class Pelajar

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package pelajar;

/**

*

* @author User

*/

public class Pelajar {

public String NIM;

}

5. Public Class Main

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package main;

/**

*

* @author User

*/

public class Main {

public static void main(String[] args){

Pelajar Yudhies = new Pelajar();

Rekening RekeningYudhies = new Rekening();

TabunganPelajar TabunganYudhies = new TabunganPelajar();

Yudhies.setNamaOrang("Yudhies");

Yudhies.setAlamatOrang("Tegal");

Yudhies.setNoKTPOrang("212");

RekeningYudhies.Debet(30000000.0);

RekeningYudhies.Kredit(3000000.0);

}

private static class Pelajar {

public Pelajar() {

}

private void setNamaOrang(String string) {

throw new UnsupportedOperationException("Not yet implemented");

}

private void setAlamatOrang(String string) {

throw new UnsupportedOperationException("Not yet implemented");

}

private void setNoKTPOrang(String string) {

throw new UnsupportedOperationException("Not yet implemented");

}

}

private static class Rekening {

public Rekening() {

}

private void Debet(double d) {

throw new UnsupportedOperationException("Not yet implemented");

}

private void Kredit(double d) {

throw new UnsupportedOperationException("Not yet implemented");

}

}

private static class TabunganPelajar {

public TabunganPelajar() {

}

}

}

UML (Unified Modeling Language) Pada Java Programming 2


UML (Unified Modeling Language) adalah sebuah bahasa untuk menetukan, visualisasi, kontruksi, dan mendokumentasikan artifact (bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak. Artifact dapat berupa model, deskripsi atau perangkat lunak) dari system perangkat lunak, seperti pada pemodelan bisnis dan system non perangkat lunak lainnya. UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan system yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. Berikut contoh programnya.

Program pertama simpan file misalnya buku.java

package uml;

public class buku {

protected String title;

protected String writer;

public void setTitle(String title){

this.title = title;

}

public String getTitle(){

return title;

}

public void setwriter(String writer){

this.writer = writer;

}

public String getWriter(){

return writer;

}

}

Program kedua misalnya mahasiswa.java

package uml;

public class mahasiswa {

private String Address;

private int NIM;

private String Nama;

public void setName(String Nama){

this.Nama = Nama;

}

public void setAddress(String Address){

this.Address = Address;

}

public void setNIM(int NIM){

this.NIM = NIM;

}

public String getName(){

return Nama;

}

public String getAddress(){

return Address;

}

public int getNIM(){

return NIM;

}

}

Program ketiga misalnya komik.java

package uml;

public class komik extends buku {

public boolean gambar;

}

Program keempat misalnya peminjaman.java

package uml;

/**

*

* @author User

*/

public class peminjaman {

/**

* @param args the command line arguments

*/

//public static void main(String[] args) {

// TODO code application logic here

public buku bukuDipinjam;

public mahasiswa anggota;

public void pinjam(mahasiswa peminjam, buku dipinjam){

anggota=peminjam;

bukuDipinjam=dipinjam;

}

public void lihatDataPeminjam(){

System.out.println(“Nama : “+anggota.getName());

System.out.println(“NIM : “+anggota.getNIM());

System.out.println(“Address : “+anggota.getAddress());

System.out.println(“Buku : “+bukuDipinjam.getTitle());

System.out.println(“Penulis : “+bukuDipinjam.getWriter());

}

}

Dan ini program mainnya. Simpan saja misalnya main.java

package uml;

public class main {

public static void main(String[] args){

buku bukuDipinjam = new buku();

mahasiswa anggota = new mahasiswa();


anggota.setName(“Ade Majid M.”);

anggota.setNIM(530241);

anggota.setAddress(“Yogya”);


bukuDipinjam.setTitle(“Resep Makanan”);

bukuDipinjam.setwriter(“Wildan”);


peminjaman diPinjam=new peminjaman();

diPinjam.pinjam(anggota, bukuDipinjam);

diPinjam.lihatDataPeminjam();

}

}

Minggu, 19 Oktober 2014

Exception Handling Pada Java

Error dalam pemrograman dibagi dalam tiga katagori yaitu syntax error (saat kompilasi), run time error, dan logic error (output belum sesuai dengan yang diharapkan).

Exception dipicu oleh run time error dan digunakan sebagai sarana melaporkan kondisi-kondisi kesalahan.
1.2. Jenis-Jenis Exception
Dalam java, exception merupakan objek dari subkelas yang diturunkan dari kelas Throwable. KelasThrowable ini terdapat dalam package java.lang.object.

1.2.1. Kelompok Kelas Error
Error ini bersifat fatal sehingga sistem tidak dapat dimanipulasi untuk diperbaiki, contoh kelas:LinkageErrorVirtualMachineError, dan AWTError.
1.2.2. Kelompok Kelas Exception
Jenis error ini masih dapat diantisipasi dengan menyisipkan statement tambahan untuk mendeteksi data yang berpotensi menimbulkan error.
Ada kelompok exception yang diperiksa oleh interpreter, apakah akan ditangani atau dilempar, namun ada pula exception yang akan tidak diperiksa interpreter.
Disamping itu programmer dibolehkan membuat exception sendiri dengan cara extends atauimplements kelas Exception.
Checked Exception
No
Exception
Deskripsi
1
ClassNotFoundExceptionKelas tidak ditemukan
2
CloneNotSupportedExceptionmelakukan clone objek yang tidak mengimplementasikan interfaceCloneable
3
IllegalAccessExceptionPengaksesan ke kelas ditolak
4
InstantiationExceptionMenciptakan objek dari kelas abtract ataupun dari interface
5
InterruptedExceptionThread telah diinterupsi oleh thread lain
6
NoSuchFieldExceptionField yang diminta tidak ada
7
NoSuchMethodExceptionMethod yang diminta tidak ada
Uncheked Exception
No
Exception
Deskripsi
1AritmaticExceptionKesalahan Aritmatik seperti pembagian dengan nol
2ArrayIndexOutBoundsExceptionIndex array di luar batas
3ArrayStoreExceptionPemberian nilai ke elemen array tidak sesuai dengan tipenya
4ClassCastExceptionCast yang tidak sah
5IllegalArgumentExceptionArgument illegal
6IllegalMonitorStateExceptionOperasi monitor illegal seperti menunggu di thread yang tidak terkunci
7IllegalStateExceptionLingkungan atau aplikasi state yang tidak benar
8IllegalThreadStateExceptionOperasi yang diminta tidak kompatibel dengan state thread saat itu
9IndexOutOfBoundExceptionIndeks di luar batas
10NegativeArraySizeExceptionArray diciptakan dengan ukuran negatif
11NullPointerExceptionPenggunan null yang tidak sah
12NumberFormatExceptionKonversi yang tidak sah dari string ke format numerik
13SecurityExceptionMelanggar
aturan security
14StringIndexOutOfBoundsIndex di luar batas string
15UnsupportedOperationExceptionDitemukan operasi yang tidak didukung
Dua Exception yang belum dikelompokkan, yaitu IOException dan AWTException.
1.3. Mengantisipasi Exception
Diperlukan tiga langkah berikut ini untuk mengantisipasi exception :
  1. Mendeklarasikan Exception
Bentuk umum :
[modifier] returntype namaMethod() throws tipeException{
}
Contoh :
public void operasiMatematika() throws IOException,
    ClassNotFoundException {
}
public void beriPinjaman() throws TolakException{
}
  1. Melempar Exception
Bentuk umum :
TipeException namaObjek = new TipeException;
throw namaObjek;
Diringkas menjadi :
throw namaObjek TipeException;
atau
throw new TipeException();
Contoh :
TolakException t = new TolakException(”lagi pelit”);
throw t;
Diringkas menjadi :
throw new TolakException(”lagi pelit!”);

  1. Menangkap Exception
Penangkapan runtime error, dapat mempunyai beberapa blok yang menangkap setiap jenis exception.
Bentuk umum :
try {
// pemanggilan method yg mungkin menghasilkan exception
// blok statement yg mungkin menghasilkan exception
}
catch(TipeException1 namaObjek) {
// penanganan salah-satu jenis exception
}
catch(TipeException2 namaObjek) {
// penanganan salah-satu jenis exception
} 
catch(TipeExceptionN namaObjek) {
// penanganan salah-satu jenis exception
}
finally {
// blok yang harus dieksekusi
}
Jika pada blok try tidak terjadi exception, maka blok catch tidak ada yang dieksekusi dan segera blokfinally yang dieksekusi.
Jika terjadi exception pada blok try, maka salah satu blok catch dieksekusi, kemudian blok finallydieksekusi. 
1.4. Mekanisme Mengantisipasi Exception
Ada tiga kemungkinan skenario exception, pertama jika tidak terjadi exception (tidak ada blok catch yang dieksekusi), kedua jika exception terjadi pada blok method tunggal (salah-satu blok catch dieksekusi), ketiga jika terjadi exception pada blok tersarang.
Method A {
    …
    try {
        …
        memanggil method B;
    }
    catch(Exception1 obj1) {
        proses Obj1;
    }
    …
}
Method B {
    …
    try {
        …;
    }
    catch(Exception2 obj2) {
        proses Obj2;
    }
    …
}
1.5. Menampilkan Pesan Exception
Beberapa method standard yang dapat digunakan untuk menampilkan pesan exception merupakan anggota dari kelas java.lang.Throwable.
No
Method Pesan Exception
Deskripsi
1
getMessage()Mengembalikan nilai string yang berisi pesanrinci tentang objek Throwable yang mengalami exception
2
toString()Mengembalikan nilai string yang berisi pesansingkat tentang objek yang mengalami exception
3
getLocalizedMessage()Menampilkan pesan exception lokal (yang terjadi pada subkelas saja)
4
printStackTrace()Method ini bersifat void, dan hanya mencetak informasi tentang objek Throwable