static void Main(string[] args)
        {
            // Abstract class'tan nesne oluşturulamaz
            // Fakat instance (örnek) oluşturulabilir.
            Kisi kisi1; // instance
                        //kisi1 = new Kisi(); hatalı
                        //kisi1 = new Ogrenci(); doğru kullanım

            Ogrenci ogrenci1 = new Ogrenci();

            ogrenci1.AdSoyad = "Ahmet Yüksel";
            ogrenci1.sinif   = 3;
            // ogrenci1.Meslek = "Ogrenci değil"; hatalı
            ogrenci1.Yaz();

            // Ogrenci sınıfı dizisi
            Ogrenci[]      ogrenciler = new Ogrenci[5];
            List <Ogrenci> list       = new List <Ogrenci>(); // Generic list

            for (int i = 0; i < ogrenciler.Length; i++)
            {
                ogrenciler[i] = new Ogrenci(); // Öğrenci nesnesi
                Console.Write("{0}. Öğrenci Adı Soyadı : ", (i + 1));
                ogrenciler[i].AdSoyad = Console.ReadLine();
                list.Add(ogrenciler[i]);
            }
            Console.WriteLine("******************************");
            foreach (var item in list)
            {
                Console.WriteLine(item.AdSoyad);
                Console.WriteLine(item.sinif);
            }

            Console.WriteLine("*******************************");
            Ogretmen ogretmen1 = new Ogretmen();

            ogretmen1.AdSoyad = "Mustafa Ersoy";
            ogretmen1.brans   = "Bilgisayar Öğretmeni";
            ogretmen1.Yaz();

            GeriDonusTipleri gdt       = new GeriDonusTipleri();
            Ogretmen         ogretmen2 = gdt.OgretmenBilgileriDondur(ogretmen1);
            Ogrenci          ogrenci2  = gdt.OgrenciOlustur();
            Ogrenci          ogrenci3  = gdt.OgrenciOlustur2();
            //gdt.IsimListesi(ogretmen: ogretmen1, ogrenci: ogrenci1);
            List <string> liste = gdt.IsimListesi(ogretmen2, ogrenci2); // Yukarıdaki satır ile aynı

            foreach (var item in liste)
            {
                Console.WriteLine(item);
            }

            gdt.EkranaYaz(ogretmen2, ogrenci2);
        }