02/08/2015 14

Java ile Enum - Kalıtım Konusu

Enum ifadesi bir takım değerlerin listesini tutan ifadelerdir. Her değerin bir adı vardır. Bu değerler ve isimleri programın açık kaldığı süre boyunca tutulur. Şimdi sizlere bunun nasıl olduğunu anlataacağım... Aslında Enum ifadesi bizim bildiğimiz Kalıtım ifadesidir.

Sabitler : Programda kullanacağımız sabit olan değerleri tutarlar ve asla değiştirmezler. Şimdi bir program yapalım ve enuların önemini ve kullanımını görelim. Enum ifadelerin üç tane sabit durumu olsun ve adlarıda The,Kod,Program olsun.Bir değişken oluşturup onu Kod değerine eşitleyeceğim ve ardından test ederken eğer Kod esitse ekrana bişeyler yazdıracağım. diğerlerine eşit değilse yazdırmayacağım.

Sonuçta nemi Oldu? Benim istediğim değerle eşleştiği için ekranada programda belirlediğim rastgele değeri yazdı :) Hadi şimdi bununla ilgili örneğimize geçelim

 

public class Program {

    enum Kalitim{
	The,
	Kod,
	Program
    }

    public static void main(String[] args) {

	// Bunu bir değişkene atıyorum ve Kod olana eşitliyorum
	Kalitim k = Kalitim.Kod;

	// Kalıtımın birinci değişkeni kontrol ediliyor eğer o ise ekrana bir yaz diyoruz
	if (k == Kalitim.The) {
	    System.out.println("The");
	} else if (k ==  Kalitim.Kod) { //burda ikincisi
	    System.out.println("Kod");
	} else if (k == Kalitim.Program) { //burda üçüncüsü
	    System.out.println("Program");
	}
    }
}
  Program Çıktısı

Kod

Değiştirme Metodu: Enum değerlerini çağırırken onların tiplerinide çağırırız. Ve burda değiştirme yapabiliriz. Bizim bunları "unqualified" sabitleri olarak tanımlamamız gerekmektedir.

Qualified: Bu nesneleri enum kalıtım adıyla beraber çağırırız. Örnek : Kalitim.The

Unqualified: Bu nesneleri ise direk çağırabiliriz. Örnek: The

Şimdi bununla ilgili bir örnek yapalım


public class Program {

    enum Deger {
	The, Kod, Program
    }

    static void test(Deger deger) {
	// Değiştirme metodu ile Switch kalıtım sınıfını kontrol ediyoruz
	switch (deger) {
	case The:
	    System.out.println("The");
	    return;
	case Kod:
	    System.out.println("Kod");
	    return;
	case Program:
	    System.out.println("Program");
	    return;
	}
    }

    public static void main(String[] args) {

	// Metodu çağırıp içine değer gönderiyoruz
	test(Deger.The);
                     test(Deger.Kod);
    }
}
  Program Çıktısı

The
Kod

Burak Hamdi tufan

İyi Çalışmalar


Tags

Share this Post



Post a Comment

Success! Your comment sent to post. It will be showed after confirmation.
Error! There was an error sending your comment.

Comments

    There is no comment. Be the owner of first comment...