Theme images by Storman. Powered by Blogger.

26 September 2017

Memahami Class Dalam Pemrograman Java

Class atau kelas adalah pendefinisian atau rancangan dari sebuah object yang nanti akan diciptakan. Oleh sebab itu Java disebut bahasa pemrograman yang berorientasi objek atau OOP (Object Oriented Programming), dimana pada saat sebuah program Java dijalankan maka akan tercipta objek-objek yang menjalankan fungsinya sesuai pendefinisiannya dalam kelas.

Dalam OOP, sekali lagi yang harus dipahami adalah bahwa class itu sebuah rancangan atau pendefinisian dan object adalah sesuatu yang tercipta hasil dari rancangan yang kita buat.

Ilustrasi Rancangan dan Objek
Ilustrasi Rancangan dan Objek
Dalam pendefinisian kelas, terdapat dua bagian utama yaitu definisi attribute dan method.


  1. Attribute atau disebut juga (field, members) merupakan variabel-variabel atau konstanta yang menjelaskan objek tersebut. 
  2. Sedangkan method atau disebut juga (function, procedure) merupakan operasi atau fungsi tertentu yang dilakukan objek.

Singkatnya atribut adalah ciri-ciri dari objek dan method  adalah kelakuan objek.

Bagaimana cara membuat sebuah kelas ?

1. Deklarasikan kelas

Yang kita lakukan sekarang ini adalah membuat sebuah rancangan dari objek. Sebagai contoh kita akan membuat rancangan objek Lampu. Maka kita tentukan nama kelas kita yaitu Lampu. Sebelum itu perhatikan aturan penulisan dari class dibawah:

 [modifier] class <NamaKelas> {  
      [deklarasi Atribut]  
      [deklarasi Konstruktor]  
      [deklarasi Method]  
 }  

Catatan : Bagian yang optional (boleh tidak ada) ditantai tanda [ dan ], sedangkan bagian yang wajib ada ditandai dengan tanda < dan >. Modifier dan Konstruktor akan dibahas pada topik berbeda.

Selanjutnya deklarasikan bentuk kelas dalam kode program seperti berikut:

 class Lampu {  
      // Disini akan dideklarasikan atribut-atribut.  

      // Sedangkan disini satu atau beberapa method.  
 }  

2. Tentukan atribut dan method

Atribut dan method dari objek yang akan diciptakan yaitu Lampu:
  1. Atribut seperti : jenis, watts, kondisi
  2. Method atau operasi yang dilakukan : hidupkan, matikan

3.Tentukan tipe data atribut

Kita dapat memilih tipe data int untuk atribut watts, String untuk jenis dan boolean untuk kondisi.  Cara penulisan attribut:

 [modifier] <tipe_data> <namaAtribut> [= nilai_awal];  

Dalam kode program kita dapat tulis seperti berikut:

 String jenis;  
 int watts;  
 boolean kondisi;  

4. Tentukan nilai kembali method dan operasinya

Sebuah method dapat melakukan operasi dan mengembalikan (return) atau menghasilkan nilai atau bahkan objek tertentu setelah dipanggil. Jika tidak ada nilai yang dikembalikan, kita bisa menulis void.  Cara penulisan method:

 [modifier] <tipe_nilai_kembali> <namaMethod>([parameter]) {   
      [kumpulan pernyataan]  
 }  

Cara penulisan method:

 void hidupkan() {  
      // Disini tulis statement yang dilakukan.  
 }  

 void matikan() {  
      // Disini tulis statement yang dilakukan.  
 }  

Diantara tanda kurung ( ) dapat di tulis satu atau lebih parameter yang merupakan nilai atau referensi yang dilewatkan dari luar kedalam method, jika tidak ada kosongkan.

5. Tentukan operasi yang dilakukan dalam method

Misalnya kita ingin agar saat method dipanggil (invoke) akan mengubah kondisi menjadi hidup atau mati dan menampilkan statusnya. Kita analogikan kondisi dalam boolean hidup sebagai true dan mati sebagai false. Maka dalam method yang sebelumnya kita tambahkan operasi menjadi:

 void hidupkan() {  
      kondisi = true;  
      System.out.println(“Lampu hidup.”);  
 }  

 void matikan() {  
      kondisi = false;  
      System.out.println(“Lampu mati.”);  
 }  

6. Masukkan attribut dan method kedalam kelas

Selanjutnya tambahkan kata kunci public sebelum nama kelas, karena ini merupakan kelas utama yang nantinya akan berisi main method. Mengenai nama file dan public class dapat dibaca di artikel “Cara Penulisan Program”. Simpan file dengan nama Lampu.java dan berikut kodenya:

 public class Lampu {  

      String jenis;  
      int watts;  
      boolean kondisi;  

      void hidupkan() {  
           kondisi = true;  
           System.out.println(“Lampu hidup.”);  
      }  

      void matikan() {  
           kondisi = false;  
           System.out.println(“Lampu mati.”);  
      }  

 }  

7. Tambahkan main method

Buat main method pada kelas Lampu, dimana main method merupakan titik awal (entry point) dimana program dijalankan, tanpa main method kode bisa dikompilasi tapi tidak bisa dijalankan (running). Setelah ditambah akan seperti berikut.


 public class Lampu {  

      String jenis;  
      int watts;  
      boolean kondisi;  

      void hidupkan() {  
           kondisi = true;  
           System.out.println(“Lampu hidup.”);  
      }  

      void matikan() {  
           kondisi = false;  
           System.out.println(“Lampu mati.”);  
      }  

      // Entry point program  
      public static void main(String[] args) {  
           // Cara membuat sebuah objek dari kelas Lampu.  
           Lampu refLampu = new Lampu();  

           // Mengakses dan memberi nilai atribut dari objek  
           refLampu.jenis = “LED”;  
           refLampu.watts = 20;  

           // Menjalankan atau mengakses method atau sebuah operasi.  
           refLampu.hidupkan();  
           refLampu.matikan();  
      }  

 }  

Penjelasan operasi main method:
  1. Lampu refLampu = new Lampu(); : Membuat sebuah variabel penunjuk (reference variable) bernama refLampu yang diarahkan ke objek yang diciptakan dengan kata kunci new yang diikuti dengan nama konstruktor (constructor) kelas yaitu Lampu(). Konstruktor akan dijelaskan nanti.
  2. refLampu.jenis = “LED”; : Menggunakan variabel penunjuk refLampu yang telah ditentukan sebelumnya kita dapat mengakses atribut dan method menggunakan tanda titik . 
  3. refLampu.hidupkan(); : Sama halnya dengan mengakses atribut, untuk memanggil method kita hanya perlu menulis nama method setelah tanda titik.
Jika dijalankan maka output dari program yaitu:

Output Lampu.java
Output Lampu.java

Konstruktor

Konstruktor adalah method yang spesial, digunakan untuk melakukan operasi pembangunan atau konstruksi atau inisialisasi dari objek, bisa jadi dalam kontruktor kita memberi nilai awal dari attribut atau melakukan operasi tertentu.

Secara default konstruktor telah ada pada kelas, walaupun kita tidak menulisnya. Kita juga dapat menuliskanya, jika ingin melakukan operasi tertentu.

Perbedaan konstruktor dengan method biasa yaitu :
  1. Konstruktor tidak disertai dengan tipe data untuk nilai kembali ataupun void.
  2. Konstruktor memiliki nama yang harus persis sama dengan nama kelas.
  3. Konstruktor bisa lebih dari satu asalkan memiliki argument yang berbeda.
Dari kode yang telah ditulis tadi kita coba membuat konstruktor yang memberi nilai awal dari atribut. Tambahkan konstruktor:

      \\...  
      boolean kondisi;  

      // Konstruktor  
      Lampu() {  
           jenis = “pijar”;  
           watts = 5;  
           kondisi = false;  
      }  

      void hidupkan() {  
      \\...  

Dapat dilihat dari kode diatas kita menuliskan konstruktor Lampu()  yang melakukan operasi memberi nilai pada atribut jenis, watts dan kondisi. Secara otomatis saat objek diciptakan dengan kata statement new Lampu(), maka konstruktor otomatis dijalankan. Kemudian untuk membuktikannya kita tampilkan nilai dari atribut.

 public class Lampu {  

      String jenis;  
      int watts;  
      boolean kondisi;  

      // Konstruktor  
      Lampu() {  
           jenis = "pijar";  
           watts = 5;  
           kondisi = false;  
      }  

      void hidupkan() {  
           kondisi = true;  
           System.out.println(“Lampu hidup.”);  
      }  

      void matikan() {  
           kondisi = false;  
           System.out.println(“Lampu mati.”);  
      }  

      public static void main(String[] args) {  
           Lampu refLampu = new Lampu();  

           // Tampilkan masing nilai atribut  
           System.out.println(“Jenis : ” + refLampu.jenis);  
           System.out.println(“Watts : ” + refLampu.watts);  
           System.out.println(“Kondisi : ” + refLampu.kondisi);  
      }  

 }  

Keluaran program yaitu :

Output Lampu.java
Output Lampu.java

Dapat dilihat bahwa konstruktor telah dijalankan.

0 on: "Memahami Class Dalam Pemrograman Java"