Java Enum: Panduan Lengkap – Codewithaden

Java adalah seorang Berorientasi pada objek Bahasa pemrograman. Oleh karena itu, enum Di Java lebih kuat daripada enum dalam C/C ++. Kita dapat menambahkan metode, variabel, dan konstruktor untuk itu.

Poin -poin penting dalam enum

  1. enum meningkatkan keamanan jenis.
  2. Enum dapat dengan mudah digunakan dalam sakelar.
  3. Enum dapat memiliki bidang, konstruktor, dan metode.
  4. enum dapat mengimplementasikan banyak antarmuka tapi tidak bisa memperpanjang Kelas apa pun karena secara internal memperluas kelas ENUM.
  5. enum dapat dilalui.

Java enum

Enum di Java mewakili sekelompok konstanta yang disebutkan dalam pemrograman. Pencacahan adalah kelas tertentu yang mewakili sekelompok konstanta. Semua nilai yang mungkin dalam enum digunakan pada waktu kompilasi. Karena itu, kami bisa mewakili kelas enum dengan bantuan tipe data enum.

Misalnya, empat jas di geladak kartu bermain mungkin empat pencacah bernama Club, Diamond, Heart, dan Spade, milik tipe yang disebutkan bernama gugatan.

Contoh lain termasuk tipe alami yang disebutkan seperti planet, hari dalam seminggu, warna, arah, dll. Akhirnya, enum adalah variabel yang tidak dapat diubah, seperti terakhir variabel.

Mari kita lihat cara membuat ECECLARE ENUM.

Sintaks enum

enum enum_name
{
     Constant list/ methods
}
 

Lihat yang berikut Test.java mengajukan.

enum WeekDays
{ 
   sunday, monday, tuesday, wednesday, thursday, friday, saturday
}

class Test
{
  public static void main(String []er)
  {
    WeekDays wd; //wk is an enumeration variable of type WeekDays
    wd = WeekDays.sunday; //wk can be assigned only the constants defined under enum type Weekdays
    System.out.println("Today is "+wd);
  }
} 

Dalam contoh di atas, Minggu, Senin … ini disebut enum konstan. Ini adalah publik, statis, dan final secara default.

Bisakah kita membuat instance enum dengan kata kunci baru?

Tidak, karena hanya berisi konstruktor pribadi.

Bisakah kita memiliki metode abstrak dalam enum?

Ya, tentu saja! Kita bisa memiliki metode abstrak dan dapat memberikan implementasi metode ini.

Variabel enumerasi dapat dinyatakan tanpa a baru kata kunci.

Variabel jenis enumerasi hanya dapat memiliki konstanta enumerasi sebagai nilai. Oleh karena itu, kami mendefinisikan variabel enum sebagai sintaks berikut.

enum_variable = enum_type.enum_constant;

Lihat outputnya.

Java

Sekarang mari kita lihat cara menggunakan case switch di enumerasi.

Lihat kode berikut.

enum WeekDays
{ 
	sunday, monday, tuesday, wednesday, thursday, friday, saturday
}

class Switch 
{
 public static void main(String []er)
 {
    WeekDays wd; 
    wd = WeekDays.monday; 
    switch(wd)
    {
	case sunday:
	    System.out.println("Today is "+wd.sunday);
		break;
	case monday:
		System.out.println("Today is "+wd.monday);
		break;
		
	case tuesday:
		System.out.println("Today is "+wd.tuesday);
		break;
	case wednesday:
		System.out.println("Today is "+wd.wednesday);
		break;
	case thursday:
		System.out.println("Today is "+wd.thursday);
		break;
	case friday:
		System.out.println("Today is "+wd.friday);
		break;
	case saturday:
		System.out.println("Today is "+wd.saturday);
		break;
     } 
   }
 } 

Lihat outputnya.

Switch

Values () dan valueOf () metode

Semua enumerasi adalah metode yang telah ditentukan sebelumnya nilai () dan Nilai dari()

Apa tujuan utama metode nilai () dalam enum?

Kompiler Java secara internal menambahkan fungsi nilai () untuk membuat enum. Metode nilai () mengembalikan array yang berisi semua nilai enum.

Metode nilai () mengembalikan array tipe enum yang berisi semua konstanta enumerasi.

Sintaks untuk nilai () metode berikut.

public static enum-type [] values();
 

Itu Nilai dari() Metode mengembalikan nilai enumerasi konstan, yang sama dengan string yang diteruskan sebagai argumen sambil memanggil metode ini.

Lihat sintaks berikut

public static enum-type[] valueOf(String s); 

Mari kita lihat contoh dari dua metode ini.

enum WeekDays
{ 
	sunday, monday, tuesday, wednesday, thursday, friday, saturday
}

class Method
{
 public static void main(String []er)
 {
    WeekDays wd;  
    System.out.println("Constant of enum type weekdays are :");
    WeekDays arr[]=WeekDays.values();
    for(WeekDays a: arr)
    {
	  System.out.print(" "+a);
    }
    wd=WeekDays.valueOf("sunday");
    System.out.println("\nToday is "+wd);
 }
} 

Lihat output berikut.

Values()

Sekarang kami akan memahami program lengkap yang berisi metode konstruktor dalam enumerasi.

Lihat program di bawah ini dan analisis output.

enum WeekDays
{ 
	sunday(1), monday(2), tuesday(3), wednesday(4), thursday(5), friday(6), saturday(7);
	private int day;
	int getday()
	{
		return day;
	}
	 WeekDays(int day)
	{
		this.day=day;
	}
}

class Final
{
   public static void main(String []er)
   {
      WeekDays wd; 
      System.out.println("Sunday is the "+WeekDays.sunday.getday()+" day of week");
   }
} 

Lihat output di bawah ini.

valueOf()

Perbedaan antara enum dan kelas

Itu enum bisa, seperti a kelas , memiliki atribut dan metode.

Perbedaan utama adalah bahwa konstanta enum adalah publik, statis, final, dan tidak dapat diubah, yang tidak dapat ditimpa.

Itu enum Tidak dapat digunakan untuk membuat objek, dan tidak dapat memperluas kelas lain, tetapi dapat menerapkan antarmuka.

Jadi, itu untuk enum di Java.

Itu untuk tutorial ini.

Artikel ini berasal dari website Winpoin, dan kemudian diterjemahkan ke bahasa indonesia, baca artikel asli disini

Leave a Reply

Your email address will not be published. Required fields are marked *