Tuesday, October 13, 2015

Variabel dan Method dalam Java



A.  Instance variables
1.    Instance variable adalah variable yang di deklarasikan di dalam kelas, tetapi diluar method, constructor maupun blok statement dan merupakan variabel yang digunakan sebagai atribut dari sebuah objek.
2.    Instance variable mempunyai access modifier.
3.    Instance variable mempunyai default value. Untuk variable yang bertipe boolean mempunyai default value yaitu false, sedangkan yang bertipe number mempunyai default value yaitu 0, dan yang bertipe object reference mempunyai default value yaitu null.
4.    Instance variable dapat diakses oleh semua method, constructor, maupun blok statement yang terdapat dalam kelas tersebut.
public class COBA {
   String nama;
   String alamat;
   double ipk;
   public void cetakMahasiswaGenius(){
      nama = "Irfan Prabowo";
      alamat = "Tulungagung";
      ipk = 3.98;
      System.out.println("---Mahasiswa Genius---");
      System.out.println("Nama   : "+nama);
      System.out.println("Alamat : "+alamat);
      System.out.println("IPK    : "+ipk);
   }
   public static void main(String[] args){
      COBA demo = new COBA();
      demo.cetakMahasiswaGenius();
      System.out.println();
   }
}

B.  instance methods
Instance method adalah methodnya object yaitu method yang hanya bisa dibaca setelah class tersebut diturunkan ke object. Instance method adalah method yang ditakrifkan untuk sesuatu instance (objek suatu kelas) Instance Method bisa dikatakan juga sebagai fungsi yg beroperasi pada objek untuk memanipulasi state object lewat pesan yg diterima dari obyek lain.
public class COBA {
    String nama, npm;
    int PBO, strudat;
    void cetak(int p, int s){
        nama = "Irfan Prabowo";
        npm = "01-00059";
        this.PBO = p;
        this.strudat = s;
    }
    public static void main (String args[]){
        COBA nilai = new COBA();
        nilai.cetak(90, 93);
        System.out.println("--Daftar Nilai Semester Tiga--");
        System.out.println("------------------------------");
        System.out.println("Nama Mahasiswa : "+nilai.nama);
        System.out.println("NPM            : "+nilai.npm);
        System.out.println("PBO            : "+nilai.PBO);
        System.out.println("Struktur Data  : "+nilai.strudat);
    }
}
C.  Static variables
1.    Static variable / Class variable adalah variable yang dibuat menggunakan keyword static di dalam sebuah kelas tapi diluar method, constructor maupun blok statement.
2.    Static variable biasanya digunakan untuk membuat sebuah konstanta. Konstanta adalah variable yang mempunyai nilai tetap dan tidak boleh diubah.
3.    Static variable biasanya di deklarasikan sebagai public, karena biasanya digunakan oleh semua kelas.
4.    Static variable di load ketika sebuah program di jalankan, dan di-stop ketika program di hentikan.
5.    Cara deklarasi Static Variable  : NamaKelas.namaVariable.
public class StaticVariableDemo {
static class Lingkaran{
      public static final double PHI = 3.14;
      public static double luasLingkaran(double jariJari){
          return PHI*jariJari*jariJari;
      }
      public static double kelilingLingkaran(double jariJari){
          return 2*PHI*jariJari;
      }
 }
 public static void main(String[] args){
     System.out.println("Menghitung Luas & Keliling Lingkaran\ndengan panjang jari-jari 5 cm");
     System.out.println("------------------------------------");
     System.out.println("Luas lingkaran     = "+Lingkaran.luasLingkaran(5));
     System.out.println("Keliling lingkaran = "+Lingkaran.kelilingLingkaran(5));
 }
}
D.  Static methods
1.    Static method adalah method yang dapat dipakai tanpa harus menginisialisasi suatu class.
2.    Static method hanya dimiliki oleh class dan tidak dapat digunakan oleh instance (atau objek) dari suatu class.
3.    Static method dibedakan dari method yang dapat instance di dalam suatu class oleh kata kunci static.
4.    Untuk memanggil static method, ketik :
Classname.staticMethodName(paramater);
Contoh program :
public class COBA {
    static String nama, npm, PBO, strudat;
    static void cetak(String p, String s){
        nama = "Irfan Prabowo";
        npm = "01-00059";
        PBO = p;
        strudat = s;
    }
    public static void main (String args[]){
        COBA.cetak("A","A");
        System.out.println("--Daftar Nilai Semester Tiga--");
        System.out.println("------------------------------");
        System.out.println("Nama Mahasiswa : "+COBA.nama);
        System.out.println("NPM            : "+COBA.npm);
        System.out.println("PBO            : "+COBA.PBO);
        System.out.println("Struktur Data  : "+COBA.strudat);
    }
}
E.  Method Overloading
Method overloading adalah suatu cara untuk memberikan nama yang sama kepada dua method yang berbeda meski dua method tersebut berada dalam class yang sama. Hal ini dapat dilakukan dengan cara membedakan tipe parameter, jumlah parameter dan susunan parameter.
public class COBA {
    public void testOverloadedMethods()
    {
        System.out.printf("Hasil kuadrat dari masukan integer 7  = %d\n", square(7));
        System.out.printf("Hasil kuadrat dari masukan double 1.5 = %f\n", square(1.5));
    }
    public int square(int intValue)
    {
        System.out.printf("\nMasukan Integer : %d\n",intValue);
        return intValue * intValue;
    }
    public double square(double doubleValue)
    {
        System.out.printf("\nMasukan Double  : %f\n",doubleValue);
        return doubleValue * doubleValue;
    }
    public static void main(String args[]){
        COBA methodOverload = new COBA();
        methodOverload.testOverloadedMethods();
    }
}