
Ekim 13, 2009 16:49 by
molks
Şimdi class imizin daha güzel olması için küçük bir değişiklik yapalim mesela üretilecek oyuncak ayilarin sadece 3 rengi olacağini biliyoruz diyelim.beyaz,mavi ve yeşil olsun bu renkler.
oyuncak ayimizin bir nesnesi üretildiğinde, yani ;
OyuncakAyi Bruno = new OyuncakAyi(); şeklinde Bruno adinda bir ayi ürettiğimizde
Bruno.Rengi="Beyaz"; diye girmek zorunda kalıcaz.zorunda kalicaz diyorum çünkü Pembe de girilebiliyor. ama pembe renkte bir oyuncak ayi üretilmeyecek.Bunu kisitlamanın bir yolu olmalı.Mesela string yerine kendimize ait Renk diye bir tipimiz olsaydı ve o tipin alabileceği sadece 3 tane değer olsaydi ( beyaz,mavi,yeşil ) hoş olmazmiydi.İşte bunun için bir enum tanımlamamız gerekir.Küçük ama önemli bir ayrinti daha var,enum bir tip oldugundan dolayı class'in dişinda tanımlamamız gerekir ;

şimdide uygulamamızın içinden Bruno'ya bir bakalim ;

evet şimdi tam istediğimiz gibi oldu.Bizim istediğimiz 3 rengin dişinda bir renk hiçbir şekilde girilemeyecek,ve framework 3.0 ile gelen yeniliklerden biri,property ye değerini atamadan önce class'in instance 'ini alma zorunluluğunu ortadan kaldırdı .Aynı işlemi şöylede yapabilirdik ;

3d391f8c-6fbe-495e-a12c-22fc6722cdbe|4|4.5