enum AminoAsit{ALANIN,GLUTAMIN,PROLIN,SERIN};
Java’da Enum tanımlamak için enum anahtar kelimesi kullanılır. Daha sonra enum elemanları süslü parantez içinde yazılır. Şimdi bu örneği biraz daha geliştirelim ve enum için bir yapıcı (constructor) metod tanımlayalım :
enum AminoAsit {
ALANIN("apolar"), GLUTAMIN("polar"), PROLIN("nötür"), SERIN("nötür");
public String polarite_;
AminoAsit() {
}
AminoAsit(String polarite) {
polarite_ = polarite;
}
};
Örneği biraz değiştirerek bir String alan yapıcı metodumuzu ekledik. Burada dikkat etmemiz gereken kural yapıcı metodumuzun public erişim seviyesinde olmaması. Enum’ların sınıflardan bir farkı yapıcı metodlarının public erişim seviyesinde olamamasıdır. Enum yapılarının sınıf yapısından bir diğer farkı ise Enum yapılarının herhangi bir sınıftan miras alamamasıdır. Bunun tersine Enum yapıları herhangi bir arayüzü gerçekleyebilirler yani şu kullanım geçerlidir :
interface Hidropatik {
public double getHidropatiKatsayi();
}
enum AminoAsit implements Hidropatik {
ALANIN("apolar") {
@Override
public double getHidropatiKatsayi() {
return 1.8;
}
},
GLUTAMIN("polar") {
@Override
public double getHidropatiKatsayi() {
return -3.5;
}
},
PROLIN("nötür") {
@Override
public double getHidropatiKatsayi() {
return 0.0;
}
},
SERIN("nötür") {
@Override
public double getHidropatiKatsayi() {
return -0.8;
}
};
public String polarite_;
AminoAsit() {
}
AminoAsit(String polarite) {
polarite_ = polarite;
}
};
Yukarıda tanımladığımız Enum’u nasıl kullanacağımızı görelim. Aşağıdaki örnekte tanımladığımız Enum’un tüm elemanlarına ulaşıyoruz:
for (AminoAsit a : AminoAsit.values()) {
System.out.println(a.name() + " " + a.polarite_ + " " + a.getHidropatiKatsayi());
}
İlgili Yazılar:
- Java Dersleri 2 – Sınıf Kavramı ve Yapısı (Class Structure) JDK kurulumunu ve derleyici kullanımını öğrendikten sonra kod geliştirmeye...
- Java Dersleri 5 – Kalıtım (Inheritance) Bu derste Java’nın nesne yönelimli programlamanın temeli olan kalıtım(Inheritance) kavramını...
- Java Dersleri 6 – Arayüzler ve Gerçeklenmesi (Interface and Implementation) Nesne odaklı programlamada arayüzler sınıfların dış dünyaya açılan kapılarıdır. Bir...
- Kd Ağacı (Kd Tree) Veri Yapısı Görselleştirmesi Aşağıdaki resme tıklayarak uygulamalı olarak kd ağaç veri yapısına değerler...
- Java Dersleri 4 – Erişim Denetleyicileri (Access Modifiers) Bu dersimizde Java’nın metodlar ve sınıflar üzerinde erişim kurallarını...


0 Yorum.