none
OOP Hakkında; Override RRS feed

  • Genel Tartışma

  • Override kelime anlamı ezmek, üzerinden geçmektir. C# ta da benzer bir anlamı vardır. Inherit bir method, yeni bir method ile override edilir. Yeni method, atadan miras kalan methodun yerine geçer. Bir methodun override olabilmesi için virtual kelimesi ile oluşturulması gerekir.

    Örnek;

    public class Class1
    {
         public virtual string Method1()
         {
             return "Ana Class";
         }
    }

    public class Class2: Class1
    {
         public override string Method1()
         {
             return "Bu method override oldu";
         }
    }


    Framwork içindeki birçok class virtualdır ve override edilebilir. Örneğin nerdeyse tüm classlarda bulunan ToString virtual bir methoddur.

    Örnek;
    public enum Suits { Kupa, Karo, Maça, Sinek }
    public class Card
    {
         public Suits Suit {get; set; }
         public int Rank {get; set; }

         private string[] _ranks = {"2","3","4","5","6","7","8","9","10","J","Q","K","A"};

         public override string ToString()
         {
              return string.Format("{0} {1}", this.Suit.ToString(), _ranks[this.Rank]);
         }    
    }


    The God / www.club-bravo.com
    12 Kasım 2010 Cuma 08:08