Java’da Enum Kullanımı

Merhabalar arkadaşlar bu yazımızda JAVA’da ENUM konusunu inceleyeceğiz.

Uygulama geliştirirken bazı sabit değerlerimiz vardır bunlar hiç değişmeyecektir.

Mesela Cinsiyet bilgisi ERKEK veya KADIN olarak sabittir ya da Ödeme seçenekleri KREDİ KARTI, KAPIDA ODEME Seçeneği gibi  sabit tanımlarımızı kodumuzun okunabilirliği açısından bu tip veri setimizi ENUM olarak tanımlayabiliriz.

Amacımız sabitlerimizi düzenli bir şekilde bir sırada tutmak. Bir örnek ile bunu inceleyelim.

Bir E-Ticaret Uygulamamızdan Kullanıcıya alacağı kıyafetin bedenini seçtireceğiz ve sabit bedenlerimiz SMALL MEDIUM ve LARGE Olsun.Bunun için bir enum oluşturuyoruz ve aşağıdaki gibi tanımlıyoruz.

Enum tanımlamak için aşağıdaki gibi enum keyword’ü kullanılır ve Büyük harf ile enumlarımızı yan yana tanımlayabiliriz isteğe bağlı olarak sonunda “;” de yazabilirsiniz.

1

Şimdi Main sınıfımızda tanımladığımız enum’a ulaşmaya çalışalım.

2

Main sınıfımızda BodySize objemizi oluşturup direkt olarak BodySize.LARGE, BodySize.MEDIUM,BodySize.SMALL şeklinde doğrudan ulaşabiliriz.Şimdi dikkatinizi bir şey çekmiş olmalı ! BodySize Enum  içerisinde name adında bir  fonksiyon tanımlamamıştık ama bize bodySize.name(); metotu tanımlı olarak geldi.

Burada enum keyword’ünün extend edilmiş olduğu sınıfı inceleyebilirsiniz.

https://docs.oracle.com/javase/7/docs/api/java/lang/Enum.html

Enumlarımıza bir sıra değerini şu şekilde tanımlayabiliriz ve bu değere ulaşmak için bir size adında property tanımlayalım ve bir adet constructor’a ihtiyacımız olacak ama private olmalıdır.Tanımladığımız sıra değerine ulaşmak için bir tane getter metotumuzu tanımlayalım.Aşağıdaki kod örneği bu işlemi göstermektedir.

4

Şimdi Main sınıfımızda BodySize Enum’u yeniden inceleyelim. bodySize’ı tanımlamıştık ve içerisindeki getSize ı çağırdık.Console’a yazdırdık.

Hemen altında  bir döngü tanımlayıp BodySize dizisi oluşturdum ve Enum içerisindeki values(); metotunu göstermek istedim.

5

Enumların kullanımı bu şekilde herkese iyi çalışmalar diliyorum faydalı olması dileğiyle İyi Çalışmalar 🙂

 

Yorum bırakın