namespace Encapsulation
{
class Personel
{
public string adi;
private DateTime dogumTarihi;
public DateTime DogumTarihi
{
get { return dogumTarihi; }
set
{
if (value<= DateTime.Now)
{
dogumTarihi = value;
}
else
{
dogumTarihi = DateTime.Now;
}
}
}
private int yas;
public int Yas
{
get
{
return (int)((DateTime.Now - DogumTarihi).TotalDays / 365);
}
}
}
}
Kapsülleme ile bir kontrol mekanizması oluşturulabilir ve kayıt işlemleri daha veritabanına gitmeden önce kontrolü sağlanabilir. Örneğin bir hoca öğrencisini dersten geçirmek için 100 den fazla puan girmek isterse encapsulation da set içinde tanımlanan kontrol ile bu engellenmiş olur. Kayıt set metoduna geldiği zaman (value) doğum tarihi kontrole edilir ve zaman kontrolü yapılır ve buaradaki kontrole göre get metodunda döndürülür.
Hiç yorum yok:
Yorum Gönder