diff --git a/intermediate/JavaEnum/Main.java b/intermediate/JavaEnum/Main.java
new file mode 100644
index 0000000..d68340e
--- /dev/null
+++ b/intermediate/JavaEnum/Main.java
@@ -0,0 +1,35 @@
+class Main {
+    // pada line 3 definisikan enum seperti mendefinisikan class
+    // dan pada line 4 definisikan kata kunci dengan pemisah koma
+    enum Quality {
+        SD, HD, FHD, QHD, UHD
+    }
+
+    // contoh lain enum berikut
+    // terdapat getter yang dapat berfungsi menampilkan deskripsi dari nilai enum
+    enum Currency {
+        IDR("Indonesia Rupiah"),
+        SGD("Singapore Dollar"),
+        KRW("Korean Won");
+
+        String currencyDescription;
+
+        // mendefinisikan constructor Currency dengan atribut currencyDescription
+        Currency(String currencyDescription) {
+            this.currencyDescription = currencyDescription;
+        }
+        // mendefinisikan method getCurrencyDescription dengan balikan berupa String
+        String getCurrencyDescription() {
+            return this.currencyDescription ;
+        }
+    }
+
+    public static void main(String[] args) {
+        // menampilkan enum Quality FHD
+        System.out.println(Quality.FHD);
+        // menampilkan enum Currency IDR
+        System.out.println(Currency.IDR);
+        // menampilkan enum Currency KRW berupa String currencyDescription yaitu Korean Won
+        System.out.println(Currency.KRW. getCurrencyDescription());
+    }
+}
diff --git a/intermediate/JavaEnum/README.md b/intermediate/JavaEnum/README.md
new file mode 100644
index 0000000..b1c05a9
--- /dev/null
+++ b/intermediate/JavaEnum/README.md
@@ -0,0 +1,36 @@
+# Java Enum
+
+Enum merupakan kelas spesial yang dapat merepresentasikan sekumpulan konstanta atau variabel yang nilainya tetap, seperti variabel dengan modifier ```final```  
+
+## Membuat Enum
+Untuk membuat enum, dapat menggunakan kata kunci ```enum```, dan memisahkan setiap nilai menggunakan koma ```,```  
+Penulisan untuk enum sendiri umumnya menggunakan huruf kapital semua  
+
+contoh kode
+```java
+class Main {
+    enum Quality {
+        SD, HD, FHD, QHD, UHD
+    }
+
+    enum Currency {
+        IDR("Indonesia Rupiah"),
+        SGD("Singapore Dollar"),
+        KRW("Korean Won");
+
+        String currency;
+        Currency(String currency) {
+            this.currency = currency;
+        }
+        String getCurrency() {
+            return this.currency;
+        }
+    }
+
+    public static void main(String[] args) {
+        System.out.println(Quality.FHD);
+        System.out.println(Currency.IDR);
+        System.out.println(Currency.KRW.getCurrency());
+    }
+}
+```
\ No newline at end of file