Artikel Terbaru

6 Contoh Program Tipe Data Buatan Menggunakan Enum pada Java

Enumeration bertujuan untuk menyediakan sekelompok nama konstanta pada bahasa pemrograman Java. Contoh, empat jenis kartu dapat memiliki empat jenis nama enumerasi seperti club, diamond, heart, dan spade yang memiliki nama enumerasi tipe Suit. Contoh lainnya seperti tipe enumerasi alami adalah planet, color, dan lain sebagainya.

Enum digunakan ketika mengetahui semua kemungkinan nilai dari tipe data. Enum pada bahasa pemrograman Java lebih handal daripada enum C atau C++. Enum Java juga dapat ditambahkan dengan variabel, method, dan counstructor. Tujuan utama dari penggunaan enum adalah mendefinisikan tipe data buatan sendiri.

Deklarasi enum pada Java:
Enum dapat dideklarasikan di dalam ataupun di luar dari class, tetapi tidak bisa dideklarasikan di dalam method.

// Contoh sederhana penggunaan

// enum

 

// Enum dideklarasikan di luar

// dari class apapun (enum

// adalah pengganti dari class

// keyword)  

enum Color

{

RED, GREEN, BLUE;

}

 

public class Test

{

/* Driver method */

public static void main(String[] args)

{

Color c1 = Color.RED;

System.out.println(c1);

}

 

}

 

 


Deklarasi enum di dalam class:

// Enum dideklarasikan di

// dalam class Java

public class Test

{

enum Color

{

RED, GREEN, BLUE;

}

 

/* Driver method */

public static void main(String[] args)

{

Color c1 = Color.RED;

System.out.println(c1);

}

 

}

 


catatan:
satu, Baris pertama pada kode program harus dideklarasikan sebagai enum, setelah itu diikuti deklarasi lain seperti method, variabel, dan constructor.
dua, Menurut aturan Kenvensi Penamaan Java, nama konstanta pada enum harus ditulis dengan HURUF KAPITAL.



Poin Penting Penggunaan pada Penggunaan ENUM:
satu, Setiap enum internal diimplementasikan oleh class.

/* internally above enum Color is converted to
class Color
{
     public static final Color RED = new Color();
     public static final Color BLUE = new Color();
     public static final Color GREEN = new Color();
}*/

dua, Setiap konstanta enum mewakili objek dari tipe enum.
tiga, Tipe data enum dapat dilewatkan sebagai argumen untuk mengganti statement.

// Program java untuk

// mendemostrasikan cara kerja

// enum

 

// dalam switch case (Filename

// Test.Java)

import java.util.Scanner;

 

/* Enum class */

enum Day

{

MINGGU, SENIN, SELASA, RABU

KAMIS, JUMAT, SABTU;

}

 

// Driver class yang

// mengandung objek "day" dan

// main().

public class Test

{

Day day;

 

/* Constructor */

public Test(Day day) { this.day = day; }

 

// Cetak baris tentang  Day

// menggunakan switch

public void dayIsLike() {

switch (day) {

 

case SENIN:  

System.out.println("Senin ya"

+"ng menyebalkan.");

break;

 

case JUMAT:

System.out.println("Jumat"

+" Lumayanlah.");

break;

 

case SABTU:

case MINGGU:

System.out.println("Hari"

+" Minggu adalah yang"

+" terbaik.");

break;

 

default:

System.out.println("Pertenga"

+"han minggu yang"

+" membosankan.");

break;

}

}

 

/* Driver method */

public static void main(String[] args)

{

String str = "SENIN";

Test t1 = new Test(Day.valueOf(str));

t1.dayIsLike();

}

 

}


empat, Setiap enum secara implisit selalu dinyatakan dalam public static final. Karena dideklarasikan dalam bentuk static, maka dapat dilakukan pengaksesan menggunakan enum Name. Karena final, maka enum tidak bisa dibuat child-nya.
lima, main() method dapat dideklarasikan di dalam enum. Dan karena hal tersebut, enum tidak bisa dipanggil secara langsung dari command prompt.

// Contoh program Java yang

// mendemonstrasikan bahwa

// method main() dapat

// digunakan didalam enum

enum Color

{

RED, GREEN, BLUE;

 

/* Driver method */

public static void main(String[] args)

{

Color c1 = Color.RED;

System.out.println(c1);

}

}

 

 


Enum dan konsep pewarisan:
  • satu, Semua enum secara implisit memberikan java.lang.Enum class. Sebagai class, maka enum hanya bisa memberikan satu parent pada Java, dan tidak bisa memberikan lebih dari satu.
  • dua, toString() method adalah overriden pada java.lang.Enum class, yang mengembalikan nama konstanta enum.
  • tiga, enum dapat diimplementasikan pada banyak interface.

method values(), ordinal(), dan valueOf():
  • satu, method ini ditampilkan di dalam java.lang.Enum.
  • dua, values() method dapat digunakan untuk mengembalikan (return) semua nilai yang ditampilkan di dalam enum.
  • tiga, perintah 'order' adalah hal penting pada enum, dengan menggunakan ordinal() method, setiap indeks konstanta enum dapat ditemukan, seperti halnya indeks array.
  • empat, valueOf() method mengembalikan konstanta enum dari nilai string yang spesifik, jika ada.

// Program java untuk

// mendemonstrasikan cara

// kerja method values(),

// ordinal(), dan valuesOf()

// pada enum

enum Color

{

RED, GREEN, BLUE;

}

 

public class Test

{

public static void main(String[] args)

{

// memanggil method values()

Color arr[] = Color.values();

 

/* looping enum */

for (Color col : arr)

{

// memanggil method ordinal()

// untuk mencari index dari

// Color

System.out.println(col + " at index " + col.ordinal());

}

 

// menggunakna method

// valueOf(). untuk

// mengembalikan nilai objek

// dari Color yang diberi

// nilai konstanta

 

// Membatalkan komentar baris

// kedua menyebabkan

// pengecualian

 

/* IllegalArgumentException */

System.out.println(Color.valueOf("RED"));

/* System.out.println(Color.valueOf("WHITE")); */

}

 

}


enum dan constructor:
  • satu, enum dapat mengandung constructor dan dapat dieksekusi secara terpisah untuk setiap konstanta enum pada saat class enum melakukan loading.
  • dua, enum tidak dapat diciptakan secara eksplisit dan karena itu enum tidak bisa dipanggil constructor secara langsung.

enum dan method:
enum dapat mengandung method konkret jika dan hanya jika tidak terdapat method abstrak pada enum tersebut.

// Program Java yang

// mendemonstrasikan bahwa

// enum dapat memiliki

// construktor dan method

// konkret

 

// catatan: kata kunci enum

// menggantikan kata kunci

// class

enum Color

{

RED, GREEN, BLUE;

 

// enum constructor dipanggil

// terpisah untuk setiap

// konstanta

private Color()

{

System.out.println("Construc"

+"tor dipanggil untuk : " 

+this.toString());

}

 

// Hanya method konkret yang

// diizinkan

public void colorInfo()

{

System.out.println("Warna"

+" Universal");

}

}

 

public class Test

{  

/* Driver method */

public static void main(String[] args)

{

Color c1 = Color.RED;

System.out.println(c1);

c1.colorInfo();

}

 

}


Komentar

  1. Secara sederhana, apa yang dimaksud dengan enum pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Enum adalah class khusus pada Java yang mewakili sekelompok konstanta atau variabel yang tidak dapat diubah, seperti variabel tipe final. Untuk dapat membuat enum pada Java, maka dapat digunakan keyword enum (bukan berupa class ataupun juga interface), dan pisahkan konstanta yang menyertai enum dengan tanda koma.

      Hapus
  2. Apa tujuan dari penggunaan enum pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Tujuan utama dari penggunaan enum pada bahasa pemrograman Java adalah untuk menentukan tipe data yang dibuat oleh programmer itu sendiri.

      Hapus
  3. Apa yang dilakukan enum pada bahasa pemrograman Java?

    BalasHapus
    Balasan
    1. Tipe enum pada bahasa pemrograman Java adalah tipe data khusus yang memungkinkan variabel menjadi sebuah kumpulan konstanta yang telah ditentukan sebelumnya. Dimana nilai variabel tersebut harus sama dengan salah satu nilai yang telah ditentukan oleh deklarasi enum sebelumnya.

      Contoh: enum Kompas, dengan nilai konstantanya adalh nilai UTARA, SELATAN, TIMUR, dan BARAT.

      Hapus

Posting Komentar

Respon komentar 7 x 24 jam, so please be patient :D

Hot Artikel!!!

Enkapsulasi pada Java

6 Tahap Utama dalam Melakukan Kompilasi Program Hello World Java

6 Contoh Program Method Overloading pada Java