C#

C# Metot Yapısı

Metotlar sınıfta tanımlanan verileri kullanan ve bu verilere ulaşılmasını sağlayan yapılardır. Programın diğer bölümleri sınıflara metot yoluyla erişir. İyi bir metot tek bir görev yapması için tasarlanır. Metotlar modüler yapıda en önemli yardımcılarımızdan biridir. Gereksiz kod tekrarı ve işlemlerden uzak durmamızı sağlar ve hız kazandırırlar. Bir işi bir metoda yaptırdığımızda bunu bir çok sınıf ve birçok farklı işlemde kullanabiliriz. Metotların mümkün oldukça tek bir görevi yerine getirmesine özen göstermek gerekir. Bu metotları doğru ve etkili kullanmamızı sağlar. Örneğin bir metoda hem toplama hem çıkarma işlemi yaptırırsak, sadece toplama işlemi yapmamız gereken bir durumda o metodu kullanamayız. Yeni bir metot yazmamız gerekir. Bu da metot mantığına ters düşer.

Metotlar sahip oldukları (bizim verdiğimiz) isimlerle çağrılırlar. Main isimli metot programı çalışmaya başlatan metottur. Tüm programlarımızda Main metodunu bulundurmak zorundayız. C# ‘ta anahtar sözcükler metot ismi olarak kullanılmamalıdır.

Bir metot şu şekilde tanımlanır:

// erişim dönüş-tipi ad(parametre listesi){

}

Sınıf için geçerli olan erişim belirleyicileri ve durumları metotlar içinde geçerlidir. Varsayılan olarak belirteç yine private olacaktır. Dönüş tipi eğer metot değer döndürmeyecekse void olmalıdır. Eğer değer döndürecekse kendi oluşturduğumuz sınıf tipleri de dahil olmak üzere bir herhangi bir veri tipi olabilir. Parametreler ise metoda aktarılan argümanların değerlerini tutan değişkenlerdir.

Metotlar içinde bulundukları sınıf türünden nesneler ile çağrılırlar. Ancak static olan metotları çağırmak için nesne oluşturmaya ihtiyaç yoktur. İçinde bulunduğu sınıftan çağrılacağı zaman yalnızca Metot() yazılarak, sınıfın dışından çağrılırken Sınıf.Metot() şeklinde çağrılabilirler.

Static bir metot tanımlama;

// static int OrnekMetot(int a){

}

Örneğin tasitInfo isimli bir metodumuz olsun. Static değil ise;

// Static olmayan metot çağırma işlemi;

Tasit otomobil = new Tasit();
otomobil.tasitInfo();

Static ise;

// Static bir metodu çağırma işlemi;

Tasit.tasitInfo();

şeklinde çağrılır.

Yorum Yap