METOTLAR
Program yazarken belli bir işi yapan kod bloğunu bir kaç kez kullanmak gerekebilir. Bunun için aynı kod bloğunu tekrar yazmak yerine bunu bir metot olarak hazırlarız ve ihtiyaç duyduğumuzda kullanırız.
Metotların yapısal olarak bir takım özellikleri vardır.Bunlar; Erişim seviyeleri Geriye değer döndürmesi Aldığı parametreler
Erişim Seviyeleri Public = public seviyesindeki bir metoda aynı sınıf içerisinden veya dışarıdaki sınıflardan erişmek ve değer almak mümkündür. Protected = bu erişim seviyesi public ve pravete arasında orta seviye erişime sahip bir metottur.
Erişim Seviyeleri Private = Public seviyesinin tam tersi sınıf üyelerinin hiç biri bu seviyedeki bir metoda ulaşamaz. Örneğin;İşçiler arasındaki bir sınıf içerisinde maaş adında bir pravete metot tanımladınız.Bu metoda sınıf dışında erişmek mümkün değildir.
Metot kullanımında dikkat edilecekler.. Programın başlangıç metodu olan Main metodu iki kez kullanılmaz. Metot isimleri numerik karakterle başlamaz. Metot isimleri büyük/küçük harflere duyarlıdır. Void kullanıldığı zaman geriye değer döndürülmez.
Metot kullanımında dikkat edilecekler.. Değer döndürmede return anahtar sözcüğü kullanılır. Bir metot bloğu içinde başka bir metot tanımlanamaz. Metotların parametre bilgisi varsa eksiksiz girilmelidir.
Void Geri dönüş değeri olmayan metotlar “Void” olarak tanımlanır.Void olarak tanımlı bir fonksiyon için “return” kullanılamaz.Eğer giriş parametresi yoksa parantez içi boş bırakılır.
C# Metot Overloading (Aşırı yükleme) Aynı metodun birden fazla versiyonun olmasıdır. Mesela toplama işlemini yapan birden fazla metodun olması. C# içerisinde birden fazla aynı metodu kullanmak için metot overloding (aşırı yükleme) yapısı vardır.
C# Metot Overloading (Aşırı yükleme) public void yazdir (string yazi) { MessageBox.Show( yazi ); } private void btnGoster_Click(object sender, EventArgs e) yazdir (Convert.ToString(topla(12.5,11.7))); public int topla(int a, int b) return a + b; public int topla(int a, int b, int c) return a + b + c ; public double topla(double a, double b)
C# Ref – Out Özellikleri Ref ve Out, metotların kullanacakları parametrelerin ilk değerlerinin atanmasında yada atanmamasında kullanılan türlerdir. Metodun parantezinde Ref kullanıldığında parametrenin ilk değerinin tanımlandığı yerde mutlaka atanması gerekmektedir ve Ref tanımlanan metoda gelen parametrenin bir değerinin olması gerekmektedir,yani bir atama işleminin gerçekleştirilmiş olması gerekmektedir.
C# Ref – Out Özellikleri Metodun parantezinde Out kullanıldığında parametrenin ilk değerinin olması gerekmez, Atam islemi out tanımlanan metodun icerisinde yapılır. Metodun kullanıldığı yerde yapılmaz.
C# Ref – Out Özellikleri public void metodRef(ref int a) { // Burda a parametresine bir değer vermek zorunda değiliz a = 24; // eğer a ya değer vermezsek programdan gelen parametrenin değeri aynen geri döner } public void metodOut(out int b) // Burda b parametresine bir değer vermek zorundayız b = 34; private void btnRefOut_Click(object sender, EventArgs e) int a = 5; metodRef(ref a); yazdir(a.ToString()); int b; metodOut(out b); yazdir(b.ToString());