rr
rr
rr
rr
rr
Kapat
resim
Yazılım Geliştirme Uzmanı
search
  • anasayfa
    Anasayfa
  • anasayfa
    Hakkımda
  • anasayfa
    İletişim

  • ANASAYFA
  • HAKKIMDA
  • İLETİŞİM

© 2013 - 2019 Kodlama ve Tasarım Metin ÇİFTÇİ

 
Beni yeni makalelerden haberdar et
Yazılım Geliştirme Uzmanı
menumenu

C# Class Tanımlama (Sınıflar)

Merhaba arkadaşlar, bu dersimizde sınıfları yani Classları anlatmaya gayret edeceğim inşeAllah. Classlar, bir nesnenin özelliklerine daha sonra erişip kullanmamızı sağlayan yapılardır. Bir yapı içinde birden fazla sınıf tanımlayabiliriz ve sınıflar birbirlerinden bağımsız yada ilişkili olabilirler. Şimdi bizim anlayabileceğimiz dilden anlatmaya çalışalım. Misal olarak, iş için form doldurmanız gerekti. Herkes eline kağıdı alıp bomboş olan bir sayfayı kendileri şekillendirip istenileni doldurması ne kadar yorucu ve karmakarışık bir iş olurdu değil mi? Ama birde size formda istenilenleri düzenli şekilde hazırlayıp ve sizden sadece boşlukları doldurmanızı isteseler ve herkes için sadece fotokopi ile çoğaltılsa yani her kişi için tekrar yeni bir tane hazırlanmasına gerek kalmadan çoğaltılsa ne kadar kolay ve pratik olurdu değil mi? İşte Classlar yani sınıflar dediğimiz yapılar bize bu konuda inanılmaz kolaylık ve pratik kazandıracak. Yani class ile karmakarışık bir  kod düzeninden kurtulmuş olacaz. Şimdi örnek üzerinden anlatmaya çalışalım.



 public partial class Form2 : Form // Bu Form2 formumuzun class bölümü.

 {

 public Form2()

 {

 InitializeComponent();

 }

       

 /* Form2 formuna bir adet buton ve 5 adet textbox yerleştirelim. Buton name'ini btn_Kaydet yapalım.*/

 private void btn_Kaydet_Click(object sender, EventArgs e)

 {   

 /* Türetilen her bir class Ram bellekte ayrı bir yer tutar.*/

 IsFormu isformu = new IsFormu();// Bunu bu class içinde kullanabilmek için newlemek lazım. Tıpkı bir iş formunu fotokopi çektiğimiz gibi.

    

 isformu.Ad = textBox1.Text; // Bir isim giriyoruz.

 isformu.Soyad = textBox2.Text; // Soyadınızı girin.

 isformu.Yas = Convert.ToInt32(textBox3.Text);// integer bir değer aldığı için dönüştürüyoruz.

 isformu.YabanciDil = textBox4.Text; // Yabancı dilinizi girin.

 isformu.Meslek = textBox5.Text; // Mesleğinizi girin.

 /* Atamaları yaptıkta sonra artık sınıf adıyla istediğimiz yerden ulaşabiliriz. */

 MessageBox.Show("Ad : "+isformu.Ad+"\n"+"Soyad : "+isformu.Soyad+"\n"+"Yaş : "+isformu.Yas+"\n"+"Yabancı Dil : "+isformu.YabanciDil+"\n"+"Meslek : "+isformu.Meslek);//Mesajbox ile verileri ekranda gösterelim.

 /* Şimdi ikinci bir iş formu dolduralım. Ama bu sefer verileri el ile girelim. */

 IsFormu isformu2 = new IsFormu(); // Burada yeni bir tane daha türetmiş olduk. Yani bir nevi iş formun bir tane fotokopisi gibi.

 isformu2.Ad = "Hasan";

 isformu2.Soyad = "Erdoğan";

 isformu2.Yas = 25;

 isformu2.YabanciDil = "Rusça";

 isformu2.Meslek = "Mimar";

 MessageBox.Show("Ad : " + isformu2.Ad + "\n" + "Soyad : " + isformu2.Soyad + "\n" + "Yaş : " + isformu2.Yas + "\n" + "Yabancı Dil : " + isformu2.YabanciDil + "\n" + "Meslek : " + isformu2.Meslek);//Mesajbox ile verileri ekranda gösterelim.

 /* Bu işlemlerden sonra birinci türettiğimiz sınıf değerlerini, ikinci türettiğimiz sınıf değerlerine aktarılım*/

 isformu = isformu2;//Burada isformu değerleri artık isformu2 değerlerini aldı. Yani biz bellekteki adres yolunu değiştirmiş olduk.

 MessageBox.Show("Ad : "+isformu.Ad);// isformu2 deki Ad değeri ekrana yazılacak yani el ile girdiğimiz Hasan yazılacak.

 }

 }

 class IsFormu // Örnek olarak iş formu hazırlayalım.

 {

 /* İhtiyacımız olan değişkenleri tanımlayalım. */

 public string Ad;

 public string Soyad;

 public int Yas;

 public string YabanciDil;

 public string Meslek;

 /* Public ile dışardan bu değişkenlere ulaşılmasını sağlıyoruz. */

   

 }



Oluşturduğumuz sınıflar içinde metod oluşturabilirsiniz ve classın türetildiği yerde metodu aynı değişkenler gibi çağırabilirsiniz. Önümüzdeki dersimizde metod konusunu ele alacaz ve nasıl kullanıldığını detaylı bir şekilde anlatmaya çalışacam inşeAllah. 


© 2013-2019 Kodlama ve Tasarım Metin Çiftçi

yukari