Selasa, 05 November 2013

Access Modifiers Dalam Java

MODIFIER
       Adalah untuk menentukan hubungan suatu unsur kelas dengan unsur kelas lainnya, contohnya hubungan kepemilikan antara kelas dan objek.

Ada 4 Modifier Akses :
1. public
2. protected
3. default
4. private

 
1.      Public
Akses Public adalah class member untuk diakses baik dari dalam dan luar class.
Contoh :
  public class Hello{

  public static void main(String args[]){

  // access modifer pulic

  public String nilai

   }

  }


2.      Protected
Mengijinkan class member untuk diakses oleh method dalam class tersebut dan elemen – elemen subclass.
Contoh :
  public class SuperClass{

  public static void main(String args[]){

  // access modifer protected

  protected int nilai;

   }

  }

  public class SubClass{

  public static void main(String args[]){

  // merubah nilai yang ada di superclass

  public void hitung(){

  nilai=10;

    }

   }

  }


3.      Default
adalah tipe yang hanya class dalam package yang sama yang memiliki hak akses terhadap variabel dan methods dalam class.
Contoh :
  public class Hello{

  public static void main(String args[]){

  // access modifer default

  int nilai;

   }

  }


4.      Private
pengaksesan class hanya dapat diakses oleh class dimana tipe ini dibuat.
Contoh :
  public class Hello{

  public static void main(String args[]){

  // access modifer private

  private int nilai;

   }
  
  }
    

Pengertian EXCEPTION

Exception adalah suatu mekanisme yang digunakan oleh beberapa bahasa pemrograman untuk mendeskripsikan apa yang harus dilakukan jika ada suatu kondisi yang tidak diinginkan terjadi. Eksepsi dapat dijumpai saat:
  • Mengakses method dengan argumen yang tidak sesuai
  • Membuka file yang tidak ada
  • Koneksi jaringan yang terganggu
  • Manipulasi operan yang nilainya keluar dari batasan yang didefinisikan
  • Pemanggilan class yang tidak ada
Java menyediakan dua kategori besar untuk eksepsi yang disebut sebagai checked exception dan unchecked exception.
  • Checked Exception 
     Adalah eksepsi yang diantisipasi oleh programmer untuk dihandle dalam program dan terjadi dikarenakan oleh kondisi luar yang siap muncul saat program berjalan. Misalnya membuka file yang tidak ada atau gangguan jaringan.
     Yang termasuk checked exception adalah class java.lang.Throwable dan semua subclassnya, kecuali class dan subclass dari java.lang.Error dan java.lang.RuntimeError
  • Unchecked Exception
bisa muncul dari kondisi yang merepresentasikan adanya bug atau situasi yang secara umum dianggap terlalu sulit bagi program untuk menghandlenya. Disebut sebagai unchecked karena kita tidak perlu mengeceknya atau melakukan sesuatu jika kondisi ini terjadi. Eksepsi yang muncul dari kategori situasi yang merepresentasikan bug ini disebut sebagai runtime exception. Misalnya mengakses array melebihi size yang dimilikinya.
      Yang termasuk Unchecked exception
1.      java.lang.Error dan subclassnya
2.      java.lang.RuntimeException dan subclassnya.
  • Sedangkan eksepsi yang muncul sebagai akibat dari isu environment software – yang ini jarang sekali atau sulit sekali untuk dihandle- disebut sebagai error, misalnya running out memory.
 Jadi, class Exception mendefinisikan kondisi error yang ringan yang dijumpai oleh program. Sedangkan untuk kondisi error yang berat didefinisikan dengan Error.
  • Class Exception
adalah sebuah class dasar yang merepresentasikan checked exception. Dalam hal ini, bukannya membiarkan terjadinya penghentian program, sebaliknya Anda harus menuliskan beberapa kode untuk menghandle eksepsi dan berikutnya melanjutkan program.
  • Class Error
adalah class dasar yang digunakan untuk kondisi error serius yang tidak terdeteksi. Dalam banyak kasus, Anda harus membiarkan program diterminasi.
  • Class RuntimeException
adalah class dasar yang digunakan untuk unchecked exception yang bisa muncul sebagai akibat dari bug program. Pada banyak kasus, Anda harus membiarkan program dihentikan.

KEYWORD FINAL DALAM JAVA

Kata kunci final digunakan untuk pendeklarasian yang absolut.
Keyword final dapat digunakan dalam pendeklarasian :
  - variable
  - class
  - method
Pendeklarasiannya dengan menuliskan keyword final di depan variable, class, atau method. Perlu diketahui, final adalah keyword bukan modifier akses.
  • Penggunaan final pada variabel
Contoh:
class Lingkaran {
  final double PI = 3.14;
}
Variabel PI bertipe double dan bernilai 3.14 tidak bisa diubah lagi secara aktual lewat mekanisme apapun. Baik lewat objek ataupun apapun. Final membuat variabel menjadi suatu konstanta yang absolut (tidak dapat diubah)
  • Penggunaan final pada class 
Contoh:
final class Kampus { }
Class Kampus tidak dapat diturunkan lagi (extends)
  

  • Penggunaan final pada method 
Contoh:
class Kampus {   
  final void tampil() {   
  System.out.println(“I LOVE JAVA”) } 
}
Method tampil sudah mendapatkan keyword final, dan itu berarti method tersebut tidak dapat diubah atau dioverride dan di turunkan