VİRTUAL ve ORVERRİDE METODLARI

Virtual metodu kalıtım alınan bir classtaki bir metodu ismini ana classta da kullanmamıza olanak sağlar. Tabi bunun için kalıtım verilecek class ta tanımlamanın yapılması gerekir. Override metodu ise kalıtım alan sınıfta tanımlamayı sağlar.

Şimdi de classta virtual metodunu nasıl kullandığımızı görelim .

using System.Linq;
using System.Text;

namespace WindowsFormsApplication22
{
class yazlar
{

public virtual string cumle(string metin)
{

return metin.ToLower();

}

}
}

Virtual la tanımlanan bir metod çağrılırken gene classlarda olduğu gibi yavru değişken tanımlanarak çağrılırlar.

private void button1_Click(object sender, EventArgs e)
{
yazlar yeni = new yazlar();
MessageBox.Show(yeni.cumle(“TOLGA AYAS”));
}
Gelen string ifadenin küçük harflerle geldiğini göreceksiniz. Şimdi de miras verilen classta nasıl tanımlama yapılır onu görelim;

using System.Linq;
using System.Text;

namespace WindowsFormsApplication22
{
class yazlar
{

public virtual string cumle(string metin)
{
return metin.ToLower();
}
}

class yazılar2:yazlar
{

public override string cumle(string metin)
{
return base.cumle(metin).ToUpper();
}
}
}

Bu işlemden sonrada tekrar bir yavru değişken oluşturup metodumuzu çağıralım.

private void button1_Click(object sender, EventArgs e)
{

yazılar2 yeni2 = new yazılar2();
MessageBox.Show(yeni2.cumle(“tolga ayas”));
}

Dönen string ifadenin büyük harflerle geldiğini göreceksiniz.