Metot Kavramı
Programın herhangi bir yerinde ,belirli bir işi yerine getirmek amacıyla tasarlanmış alt programlara metot denir.
Metotlar tek başlarına çalışabilen yapılar değildir.
Metodun iş yapabilmesi için kendisini çağıran metottan aldığı bilgilere parametre(argüman), kendisini çağıran fonksiyona döndürdüğü bilgiye ise (return ,value) denir.
Metot Bildirimi
C#’da bildirilen bütün metotlar bir sınıfın içinde olmalıdır. Bir sınıfın üyesi olmadığı sürece metotlar bildirilemez. Metotları tanımlarken kullanılan yapı şu şekildedir:
Erişim Belirteçleri+ Metot Adı (Parametre Listesi)
{
Metot Gövdesi;
}
Erişim belirteçleri (Public, Private , vs...) metoda nerelerden erişilebileceğini belirtir. Belirtilmediği durumlarda ise “Private” olarak kabul eder.Yani "Public" in aksine sadece tanımlandığı sınıf içinde kullanılabilen bir metot olur,"Public" ise tüm sınıflardan erişilebilir.
Geri dönüş değeri, metodun çağıran fonksiyona gönderdiği verinin türüdür.
Parametreler ise metodun çalışırken ihtiyaç duyduğu fonksiyondan gönderilen bilgileridir.
Örneğin:
int MetotAdi(int sayi1 , int sayi2)
{ return sayi1 + sayi2 ; }
C#’ta bir metot kullanıldığında metodun içinde bulunduğu sınıf türünden bir nesne tanımlanır ve "."(nokta) operatörü ile metot çağrılır.
class Metot
{
int Toplama(int sayi1, int sayi2)
{
return sayi1 +sayi2;
}
static void Main()
{
Metot islem = new Metotlar();
int toplam = islem.Toplama(2,5);
Console.Write(toplam);
Console.Read();
}
"static" olarak tanımlanan metotlara erişim sağlamak için metodun içinde bulunduğu sınıf türünden bir nesne yaratmaya gerek yoktur. "static" olarak tanımlanan metotlara sadece metodun adını yazarak erişilebiliriz. Örneğin:
class Metot {
static int Toplama (int sayi1,int sayi2)
{ return sayi1 + sayi2; }
static void Main()
{
int toplam =Toplama(2,5);
Console.Write(toplam );
Console.Read();
}
"return " kullanımlı metotlar olduğu kadar,geri dönüşsüz metotlar da mevcuttur.Onlar sadece içinde bulunduğu işlemleri gerçekleştirip geriye değer döndürmezler .
Onlara örnek verecek olursak:
void Veriler()
{
Console.WriteLine("Adı: Veysel");
Console.WriteLine("Soyadı: Yılmaz");
Console.WriteLine("İl: İstanbul");
}
static void Main()
{
Veriler();
Console.Read();
}