Rabu, 11 Mei 2016

MACAM MACAM EXCEPTION HANDLING

Exception adalah sebuah objek yang terjadi oleh kondisi yang tidak biasa, terutama ketika terjadi error conditions, run-time error atau invalid processing. Exception menyediakan pemberitahuan kesalahan dan cara penanganannya. Dengan cara ini penanganan kesalahan dapat dilakukan secara tepat.



Bug :
§ kesalahan yang merupakan kelemahan dari perancangan atau implementasi
Exception :
§ kesalahan yang dihasilkan oleh kondisi sistem /lingkungan
§ kondisi abnormal (sesuatu diluar yang biasanya) yang muncul di sekuen (urutan) kode saat jalan
§ run-time error Exception menyediakan pembangkitan kesalahan serta cara menanganinya.



Struktur kendali ini memungkinkan kita menspesifikasikan dimana kita dapat menangani suatu tipe kesalahan secara pasti. Exception menyediakan sarana mengkomunikasikan informasi kesalahan lewat suatu rantai metode, sampai terdapat satu metode yang menanganinya. Exception di Java merupakan subkelas dari kelas java.lang.Throwable. Exception adalah objek, maka memiliki data dan metode.


KATA KUNCI untuk Exception Handling :
a) try
b) catch
c) throw
d) throws
e) finally


Ringkasan kerja :
1. program yang hendak dimonitor untuk exceptionnya dimuat dalam try
2. jika exception terjadi didalam blok try, exception itu dilemparkan
3. kode dapat menangkap (catch) exception menggunakan catch dan menangani dengan suatu cara yang rasional
4. exception yang dibangkitkan sistem secara otomatis dilempar oleh sistem Java, sedangkan untuk exception yang dilemparkan secara manual maka digunakan keyword throw.
5. exception yang dilempar oleh metode harus di spesifikasikan dengan klausa throws.
6. Sembarang kode yang secara absolut harus dieksekusi sebelum metode keluar diletakkan di blok finally.


JENIS EKSEPSI
Exception dapat dibangkitkan oleh Java run-time system atau dibangitkan secara manual oleh kode program :
A. Exception yang dilempar Java run-time system berhubungan dengan kesalahankesalahan fundamental yang melanggar aturan-aturan bahasa Java atau batasan-batasan lingkungan eksekusi Java
B. Exception yang dihasilkan secara manual, umunya digunakan untuk melaporkan kondisi kesalahan ke pemanggil metode


EXCEPTION TIDAK TERTANGKAP


public class DivByZeroToy {
/** Creates a new instance of DivByZeroToy */
public DivByZeroToy() {
}
public static void main (String args[]) {
int zeroInt = 0;
int anInt = 10;
int divResult = anInt / zeroInt;
}
}


Tahap-tahap kejadian :
1. ketika sistem Java mendeteksi usaha membagi dengan nol, maka sistem membangun objek Exeption baru, dan kemudian melemparkan Exception.
2. aksi ini menyebabkan eksekusi DivByZeroToy berhenti, karena begitu satu Exception dileparkan, maka Exception harus ditangkap oleh penanganan Exception yang harus segera menanganinya.
3. karena tidak ada penanganan Exception, maka Exception ditangkap oleh penanganan sistem Java.


sembarang Exception yang tidak ditangkap oleh kode program akan ditangkap oleh penanganan default.
§ penanganan Exception menampilkan String yang mendeskripsikan Exception
§ mencetak jejak stack dari saat dimana Exception terjadi
§ mengakhiri program

Rabu, 04 Mei 2016

TUGAS 2016

  1.  ABSTRACK CLASS DAN METHOD CLASS
  2. PACKAGE CLASS
  3. CASTING OBJECT
  4. OVERLOADING & OVERRIDING
  5. INTERFACE
  6. KONSTRUKTOR DAN $ THIS
  7. MODIFIER
  8. BENTUK UMUM KONSTUKTOR

KESIMPULAN



Dengan menggunakan OOP maka dalam melakukan pemecahan suatu masalah kita tidak melihat bagaimana cara menyelesaikan suatu masalah tersebut(terstruktur) tetapi objek-objek apa yang dapat melakukan pemecahan masalah tersebut.
 

Bentuk Umum Konstruktor



Bentuk Umum Konstruktor
Konstruktor adalah method yang dieksekusi pertama kali setelah method main. Biasanya method konstruktor digunakn untuk memberikan nilai inisialisasi program. Nama dari method konstruktor harus sama dengan nama kelas.

Bentuk Umum:

class NamaKelas {

    NamaKelas() {

        // Lakukan Sesuatu

    }

}



Contoh kode


class Kendaraan {

    // property

    int jumlah_roda;

     

    // membuat konstruktornya dengan parameter jml_roda

    Kendaraan(int jml_roda) {

        jumlah_roda = jml_roda;

    }

     

    // method (prosedur) untuk menampilkan jumlah_roda

    void tampilkanJumlahRoda() {

        System.out.print(jumlah_roda);

    }

}



class Contoh {
    public static void main(String[] args) {
        // membuat objek dengan nama motor dari kelas kendaraan dengan mengisi konstruktornya
        Kendaraan motor = new Kendaraan(2);
         
        // memanggil method untuk menampilkan
        motor.tampilkanJumlahRoda();
    }



MODIFIER

Pengertian Modifier





Ada 4 Macam Acces Modifier di Java sesuai gambar di atas, yaitu:
 
  • public
    Kelas, method maupun atribut yang mempunyai access modifier public dapat diakses dari manapun dan oleh kelas apapun.
  • protected
    Atribut dan method yang mempunyai access modifier protected, artinya bahwa atribut dan method tersebut dapat diakses oleh kelas yang sama, package yang sama, dan kelas turunannya (subclass).
  • default / no access
    Atribut dan method yang mempunyai access modifier default, artinya bahwa atribut dan method tersebut dapat diakses oleh kelas yang sama dan package yang sama. 
  • private
    Atribut dan method yang mempunyai access modifier default, artinya bahwa atribut dan method tersebut dapat diakses oleh kelas yang sama dan package yang sama.

Contoh Program

public class Manusia{
    //bersifat private agar dapat diakses hanya kelas Manusia
    private String nama;

    //bersifat protected agar dapat diakses oleh subclass nya 
    protected String jenisKelamin;

    public Manusia(String nama, String jenisKelamin){
        nama = nama;
        jenisKelamin = jenisKelamin; 
    } 

    public void setNama(String nama){
       this.nama = nama; 
    }

    public String getNama(){
      return nama; 
    }

    public void setJenisKelamin(String jenisKelamin){
      this.jenisKelamin = jenisKelamin; 
    }

    public String tampilkan(){
       return("Nama : "+nama +"\nJenis Kelamin : "+jenisKelamin); 
    } 
}

  • Non Access Modifier
Java menyediakan beberapa macam Non-Access Modifier, yaitu:

  • static
Static adalah salah satu jenis modifier di Java yang digunakan agar suatu atribut atau pun method dapat diakses oleh kelas atau objek tanpa harus melakukan instansiasi terhadap kelas tersebut.

Method main adalah salah satu contoh method yang mempunyai modifier static.
 
  • final
Final adalah salah satu modifier yang digunakan agar suatu atribut atau method bersifat final atau tidak bisa diubah nilainya. Modifier ini digunakan untuk membuat konstanta di Java.
 
  • abstract
Abstract adalah modifier yang digunakan untuk membuat kelas dan method abstrak
 
  • synchronized
Synchronized adalah modifier yang digunakan dalam aplikasi Java berbasis thread. Modifier ini menspesifikasikan bahwa method merupakan thread safe. Artinya bahwa hanya ada satu jalur eksekusi pada method yang menggunakan modifier jenis ini dan memaksa thread thread lain menunggu giliran.
 
  • native
Modifier Native digunakan untuk spesifikasi method dengan implementasi di bahasa lain, seperti C, C++.
 
  • transient
Modifier ini digunakan agar suatu variable tidak bisa di serialisasi. Serialization adalah konsep dimana sebuah objek dapat ditransfer dari suatu aplikasi ke aplikasi lainnya atau dari suatu workstation ke workstation lainnya. Konsep ini sangat diperlukan ketika membuat aplikasi client server.

Salah satu tujuan serialization adalah bahwa tidak boleh ada perubahan terhadap atribut pada saat objek di transformasikan menjadi stream.
  • volatile
  • implements
  • extends