Abstract Class etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Abstract Class etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

2 Haziran 2013 Pazar

C Sharp Uygulamalar Abstract Class Oluşturma - Miras Alma - Override Abstract Methods



KONU : C Sharp Uygulamalar - C Sharp ( C# ) soyut (abstract class) Sınıf oluşturma ve fields & properties ekleme. C sharp soyut sınıftan miras alma. C sharp soyut metot - abstract method oluşturma. Soyut metoda miras alınan sınıfta gövde ekleme - Override abstract method. Generic Liste nesne ekleme ve eklenen nesneleri listeleme. C sharp Override ToString.C sharp override a abstract method.
ETİKETLER: c sharp abstract class - c sharp class inheritance - c sharp field - c sharp field declaration - c sharp properties - c sharp field property - c sharp access modifier - c sharp field access modifier - c# access modifier - c# field - c# field nedir - c# fields - c# field and property - csharp class - csharp class örnekleri - csharp class tanımlama - csharp class oluşturma - csharp class kullanımı - csharp class constructor - c sharp sınıf tanımlama - c sharp sınıf oluşturma - c sharp alan tanımlama - Generic List - c sharp generic list - generic list kullanımı - c sharp abstract method - c sharp soyut metot tanımlama.





UYGULAMAYI İNDİR



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

namespace oop_abstractmethod
{
    class Program
    {
        static void Main(string[] args)
        {

            // hayvanlar sınıfından bir jenerik liste oluşturma

            List hayvanlar = new List();

            //EtcilHayvanlar sınıfından bir örnek oluşturma

            Hayvanlar hayvan = new EtcilHayvanlar();
            hayvan.Ad = "Kartal";
            hayvan.NeKadarBesinTuketiyor = 547;

            //jenerik liste oluşturulan hayvan nesnesini ekle

            hayvanlar.Add(hayvan);

            //OtculHayvanlar sınıfından bir örnek oluşturma

            hayvan = new OtculHayvanlar();
            hayvan.Ad = "Sincap";
            hayvan.NeKadarBesinTuketiyor = 23.45;

            //jenerik liste oluşturulan hayvan nesnesini ekle

            hayvanlar.Add(hayvan);

            //HemEtçilHemOtçulHayvanlar sınıfından bir örnek oluşturma

            hayvan = new HemEtçilHemOtçulHayvanlar();
            hayvan.Ad = "İnsan";

            //jenerik liste oluşturulan hayvan nesnesini ekle

            hayvanlar.Add(hayvan);

            //hayvanlar jenerik listesindeki canlıları konsola yaz

            foreach (Hayvanlar item in hayvanlar)
            {
                Console.WriteLine(item + " : " +item.BeslenmeSekli());
            }

            Console.ReadKey();
        } 
    }

    //soyut sınıf (abstract class ) oluşturma

    abstract class Hayvanlar
    {
        public string Ad
        {
            get;
            set;
        }

        public double NeKadarBesinTuketiyor
        {
            get;
            set;
        }

        //Override ToString metot 
        public override string ToString()
        {
            return this.Ad;
        }

        //Gövdesi olmayan metot
        //soyut metot oluşturma (abstract method)

        public abstract string BeslenmeSekli();

        //Soyut olarak oluşturulan metodun gövdesi boş bırakılır
        //miras alındığı sınıfta doldurulur (override yaparak) 
    }

    //abstract hayvanlar sınıfını miras alma

    class OtculHayvanlar : Hayvanlar
    {
        //abstract metodun gövdesini doldurma, override ile gövdesi olmayan
        // soyut metoda gövde ekleyelim

        public override string BeslenmeSekli()
        {
            return "Otçul besleniyoruz...";
        }
    }

    //abstract hayvanlar sınıfını miras alma

    class EtcilHayvanlar : Hayvanlar
    {

        //abstract metodun gövdesini doldurma, override ile gövdesi olmayan
        // soyut metoda gövde ekleyelim

        public override string BeslenmeSekli()
        {
            return "Etçil besleniyoruz...";
        }
    }

    //abstract hayvanlar sınıfını miras alma

    class HemEtçilHemOtçulHayvanlar : Hayvanlar
    {
        //abstract metodun gövdesini doldurma, override ile gövdesi olmayan
        // soyut metoda gövde ekleyelim

        public override string BeslenmeSekli()
        {
            return "Hem etçil hem de otçul besleniriz...";
        }
    }


    /*
     * Program çıktısı
     * 
        Kartal : Etçil besleniyoruz...
        Sincap : Otçul besleniyoruz...
        İnsan : Hem etçil hem de otçul besleniriz...
     * 
     */
}


1 Haziran 2013 Cumartesi

C Sharp Uygulamalar Abstract Class Oluşturma - Miras Alma - Override Virtual Methods



KONU : C Sharp Uygulamalar - C Sharp ( C# ) soyut (abstract class) Sınıf oluşturma ve fields & properties ekleme. C sharp miras alma. Generic Liste nesne ekleme ve eklenen nesneleri listeleme. C sharp Override ToString.C sharp override a virtual method.
ETİKETLER: c sharp abstract class - c sharp class inheritance - c sharp field - c sharp field declaration - c sharp properties - c sharp field property - c sharp access modifier - c sharp field access modifier - c# access modifier - c# field - c# field nedir - c# fields - c# field and property - csharp class - csharp class örnekleri - csharp class tanımlama - csharp class oluşturma - csharp class kullanımı - csharp class constructor - c sharp sınıf tanımlama - c sharp sınıf oluşturma - c sharp alan tanımlama - Generic List - c sharp generic list - generic list kullanımı





UYGULAMAYI İNDİR



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

namespace oop_abstract
{
    class Program
    {
        static void Main(string[] args)
        {
            //Canlilar nesnesini listeleyen bir generic list oluşturalım

            List canlilar = new List();

            Canlilar canli = new Hayvanlar("yılan");

            //oluşturulan yılan nesnesini listeye ekleyelim
            
            canlilar.Add(canli);

            canli = new Bitkiler("begonya");
            
            //oluşturulan begonya bitikisini listeye ekleyelim

            canlilar.Add(canli);

            // burada da listeye eklediğimiz canlıları ve beslenme türlerini console
            //ekranına yazdıralım.

            Array.ForEach(canlilar.ToArray(), canliItem => Console.WriteLine(canliItem.ToString() + " : " + canliItem.Beslen()));
          
            Console.ReadKey();

        }
    }


    //Soyut olarak Canlılar sınıfını tanımlayalım

    abstract class Canlilar
    {
        public string  Alem 
        { 
            get; 
            set; 
        }
        public string Ad
        {
            get;
            set;
        }

        protected string beslenmetürü = "standart";

        public string BeslenmeBicimi()
        {
            return beslenmetürü;
        }

        public Canlilar()
        {
            //nesne yapıcı (constructor)
        }

        public Canlilar(string Ad)
        {
            //nesne yapıcı  - constructor - parametre : Ad

            this.Ad = Ad;
        }

        //override ToString Method
        public override string ToString()
        {
            return this.Alem +" aleminden " + this.Ad;
        }

        public virtual string Beslen()
        {
            return "standart";
        }
    }

    class Hayvanlar:Canlilar
    {
        public Hayvanlar(string ad):base(ad)
        {
            this.Alem = this.GetType().Name;
        }
    }

    class Bitkiler : Canlilar
    {
        public Bitkiler(string ad):base(ad)
        {
            this.beslenmetürü = "fotosentez";
            this.Alem = this.GetType().Name;
        }

        //Virtual olarak tanımlanan metotlar override ile ezilebilir.
        //Miras alınan sınıfta bu değer aşağıdaki gibi değiştirilebilir
        public override string Beslen()
        {
            return "fotosentez";
        }
    }
}

   





24 Nisan 2013 Çarşamba

C Sharp Uygulamalar Abstract Class Instance - Soyut Sınıf Oluşturma - Sınıflar Miras Alma - Method Overiding



KONU : C Sharp Uygulamalar - C Sharp ( C# ) konsol sınıf oluşturma, Soyut sınıf oluşturma, soyut sınıftan yeni sınıflar türetme, sınıflarda miras alma, c sharp method overiding, c sharp soyut metodu ezme.





UYGULAMAYI İNDİR



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

namespace Soyut_Sinif
{
    class Program
    {
        static void Main(string[] args)
        {
            //SoyutSinif soyutsinif = new SoyutSinif();   

            // Böyle bir tanımlama yapılamaz Abstract sınıfın bir örneği(instance) alınamaz

            // Sadece kalıtım için kullanılabilir

            TuretilenSinif tureyensinif = new TuretilenSinif();


            // yazdir metodu SoyutSinif ına ait bir metot 
            
            tureyensinif.yazdir("Merhaba\n");

            
            // yaz() metodu SoyutSiniftan miras alınmış ve TuretileSinif içinde

            // değiştirilerek (override) artık TüretilenSinif ın bir metodudur.

            tureyensinif.yaz();

            tureyensinif.Ad = "Ahmet";

            tureyensinif.Soyad = "Kara";

            tureyensinif.Telefon = "1 111 111 11 11 ";


            Console.WriteLine(tureyensinif.Ad + "  " + tureyensinif.Soyad + 
                ": "+tureyensinif.Telefon);
            
            Console.ReadKey();




            /*
             *
             * Program Çıktısı:
             * 
             *  Merhaba

                Türetilen sinifta değiştirildim

                Ahmet  Kara: 1 111 111 11 11
             *
             */
        }
    }


    // Abstract sınıf(soyut sınıf) oluşturma

    // Abstract sınıfların nesnesi üretilemez

    // Abstract sınıflardan türemiş olan sınıfların nesneleri üretilebilir.

    // Bu duruma çok biçimlik (polymorphism) denir.

    // Abstract sınıf kalıtım amacıyla kullanılır.

    abstract class SoyutSinif
    {
        //Abstrac sinif içinde normal bir metot 


        public void yazdir(string yazi) 
        {
            Console.WriteLine(yazi);
        }


        // Abstrac sinif içinde abstract bir metod oluşturma

        public abstract void yaz();


        //abstact bir metot sonradan yani miras alındığı sınıf içinde değiştirilmesine

        // olanak verir (override).

        // Abstract metot static olamaz.

        // Abstract metot virtual olamaz.

        // Abstract metot private olarak tanımlanamaz.

        // Abstract sınıf içinde metodun tanımlaması veya açıklaması yapılmaz.

        // Ad isminde soyut bir property oluşturma  

        // Soyut metod için geçerli olan özelikler soyut property içinde geçerlidir


        public abstract string Ad
        { 
            get; 
            set; 
        }

        // Soyad isminde soyut bir property oluşturma 

        // Soyut metod için geçerli olan özelikler soyut property içinde geçerlidir


        public abstract string Soyad
        { 
            get; 
            set; 
        }


        public abstract string Telefon 
        { 
            get; 
            set; 
        }
    }

 
    class TuretilenSinif:SoyutSinif
    {
        // Abstract metodu (override) değiştir 

        public override void yaz()
        {
            Console.WriteLine("Türetilen sinifta değiştirildim\n");
        }

        private string ad;

        private string soyad;

        private string telefon;


        // Abstract 

        public override string Ad
        {
            get
            {
                return ad;
            }
            set
            {
                ad = value;
            }
        }


        public override string Soyad
        {
            get
            {
                return soyad;
            }
            set
            {
                soyad = value;
            }
        }


        public override string Telefon
        {
            get
            {
                return telefon;
            }
            set
            {
                telefon = value;
            }
        }
    }
}

}


UYGULAMAYI İNDİR