Base Pointer (Temel İşaretçisi)

Eyl 08, 2013

Kalıtımda, türetmenin yapıldığı üst sınıflar base class (temel sınıf), bu sınıftan türetilen sınıflarda derived class (türeyen sınıf) olarak adlandırılır. Türeyen sınıflardan türediği sınıfa erişim yapmak için base pointer (temel işeretçi) gereklidir. Genellikle bir metod veya constructer (yapıcı) metod çağırmak için kullanılır. 

Uygulama:

Bu uygulamada base class (temel sınıf) olarak Esnaf sınıfı oluşturulmuştur. Esnaf sınıfından, Manav sınıfı türetilmiş ve içerisinden üst sınıfın constructer (yapıcı) metoda ve Yazdir() metoduna erişim yapılmıştır.

using System;using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleBasePointer
{
     class Esnaf 
     {
          public string TestAd;
          public string TestSoyad;
          public string TcKimlikNo;

          public Esnaf(string TestAd, string TestSoyad, string TcKimlikNo)
          {
               this.TestAd = TestAd;
               this.TestSoyad = TestSoyad;
               this.TcKimlikNo = TcKimlikNo;
          }

          public void Yazdir()
          { 
               Console.WriteLine( this.TestAd +"\n" + this.TestSoyad +"\n"+ this.TcKimlikNo); 
          }
     }

     class Manav : Esnaf   
     {
          private string SicilNo;

          public Manav(string SicilNo, string TestAd, string TestSoyad, string TcKimlikNo) :
                              base(TestAd, TestSoyad,TcKimlikNo)        
          {
               this.SicilNo = SicilNo; 
          }

          public void Yazdir()
          {
               Console.WriteLine(SicilNo);
               base.Yazdir();          
          }
     } 

     class Program
     {
          static void Main(string[] args)
          {
               Manav esn = new Manav("001", "TestAd", "TestSoyad", "99999999999");
               esn.Yazdir();
          }
     }
}