C # ‘da, Yöntem ayrı bir kod bloğudur ve belirli işlemleri gerçekleştirmek için bir dizi deyim içerir ve yöntemler , gerekli parametreler belirtilerek sınıfta veya yapı içinde bildirilmelidir .

Genel olarak, c # Yöntemleri, kod tekrarını azaltarak kodun yeniden kullanılabilirliğini geliştirmek için kullanışlıdır. Diyelim ki birden fazla yerde aynı işlevselliğe sahipsek, o zaman gerekli işlevselliğe sahip bir yöntem oluşturabilir ve onu uygulamada gerekli olan her yerde kullanabiliriz.

C # Yöntemlerinin Sözdizimi

Tartışıldığı gibi, c # Yöntemleri , gerekli erişim seviyesi, dönüş türü, yöntemin adı ve aşağıda gösterildiği gibi herhangi bir yöntem parametresi belirtilerek bir sınıf veya yapı içinde bildirilmelidir .

class class_name
{
    ...
    ...
    <Access_Specifier> <Return_Type> Method_Name(<Parameters>)
    {
        // Yürütülecek İfadeler
    }
    ...
    ...
}

Yukarıdaki sözdizimini gözlemlerseniz, yöntemi çeşitli parametrelerle bir sınıfta tanımladık,  bunlar

  • Access_Specifier – Diğer sınıfların yönteme erişmesine izin vermek için genel veya özel bir erişim seviyesi tanımlamak için kullanılır. Herhangi bir erişim değiştiriciden bahsetmediysek, varsayılan olarak özeldir . 
  • Return_Type – Yöntemin döndürebileceği değer türünü belirtmek için kullanılır. Yöntem herhangi bir değeri dönen değilse durumda, o zaman söz gerek geçersiz dönüş türü olarak. 
  • Method_Name – Bir sınıftaki yöntemi tanımlamak için benzersiz bir ad olmalıdır. 
  • Parametreler – Yöntem parametreleri, bir yöntemden veri göndermek veya almak için kullanışlıdır ve bu yöntem parametreleri parantez içine alınır ve virgülle ayrılır. Bir yöntem için parametre gerekmiyorsa, boş parantezli bir yöntem tanımlamamız gerekir.

C#, her iki yöntemler ve fonksiyonları hiçbir fark yoktur ve bu c # aynı şeyi yapmak sadece farklı terimlerdir, aynıdır.

Aşağıda, c# programlama dilinde farklı yöntem türlerinin tanımlanmasına ilişkin örnekler verilmiştir.

class Users
    {
        public void GetUsers() {
        // Yürütülecek İfadeler
        }
        private void InsertUserDetails(string name, int age) {
        // Yürütülecek İfadeler
        }
        protected string GetUserDetails(int userid)
        {
            // Yürütülecek İfadeler
        }
    }

Yukarıdaki örneği gözlemlerseniz, gereksinimlerimize göre farklı erişim değiştiricileri, dönüş türleri ve farklı parametrelerle farklı yöntemler tanımladık.

Şimdi, c # programlama dilindeki yöntemleri kullanarak tam örneği göreceğiz.

C # Yöntemleri Örneği

Aşağıda, c # programlama dilinde yöntemleri kullanma örneği verilmiştir.

using System;
 
namespace kurnazWebciEx
{
    class Program
    {
        static void Main(string[] args)
        {
            Program p = new Program();
            string result = p.GetUserDetails("Kurnaz Webci", 31);
            Console.WriteLine(result);
            Console.WriteLine("Çıkmak için bir tuşa basınız..");
            Console.ReadLine();
        }
        public string GetUserDetails(string ad, int yas)
        {
            string info = string.Format("Ad: {0}, Yaş: {1}", ad, yas);
            return info;
        }
    }
}

Yukarıdaki örneği gözlemlerseniz, GetUserDetails adlı bir yöntem oluşturduk ve gerekli işlemleri gerçekleştirmek için bir parametre geçirdik ve sonucu göstermek için Main yönteminde Program sınıfının bir örneğini oluşturarak GetUserDetails yöntemine erişiyoruz .

Yukarıdaki c # programını çalıştırdığımızda, sonucu aşağıda gösterildiği gibi alacağız.

Gereksinimlerimize göre C# uygulamalarında yöntemleri bu şekilde kullanabiliriz.

C # Statik Yöntemler

C # ‘da, statik ile yöntemler oluşturursak , bu yöntemleri bir nesne oluşturmadan doğrudan sınıf seviyesinden çağırabiliriz.
Yukarıdaki örneği gözlemlerseniz, Main yöntemi statiktir ve Program sınıfının bir örneğini oluşturarak GetUserDetails yöntemini çağırıyoruz . Bunun yerine, statik ile bir yöntem oluşturursak , bu yöntemlere bir nesnenin örneğini oluşturmadan Main() yönteminde doğrudan erişebiliriz . Aşağıda, c # ‘da bir nesne örneği oluşturmadan bu yöntemlere doğrudan Main() yönteminde erişmek için statik ile yöntemler oluşturma örneği verilmiştir.

Yukarıdaki örneği gözlemlerseniz, statik ile bir GetUserDetails () yöntemi oluşturduk, böylece bu yönteme bir sınıf nesnesi örneği oluşturmadan doğrudan Main () yönteminden erişebiliriz . Yukarıdaki c # programını çalıştırdığımızda, sonucu aşağıda gösterildiği gibi alacağız.

Dönüş Türü ve Parametreleri Olmayan C # Yöntemleri

Gereksinimlerimize göre, dönüş türleri ve parametreleri olan veya olmayan c # uygulamalarında yöntemler oluşturabiliriz. Yöntem için dönüş türü olarak void kullanırsak , bu yöntem herhangi bir değer döndürmez.

Aşağıda, c # programlama dilinde herhangi bir dönüş değeri ve parametresi olmadan bir yöntem oluşturma örneği verilmiştir.

Yukarıdaki örneği gözlemlerseniz, herhangi bir dönüş türü ( void ) ve parametresi olmadan ” GetUserDetails ” adlı bir yöntem oluşturduk .

Yukarıdaki c # programını çalıştırdığımızda, sonucu aşağıda gösterildiği gibi alacağız.

Gereksinimlerimize göre herhangi bir dönüş türü ve parametresi olmadan c # ‘da yöntemler oluşturabiliriz.