bilgiz.org

C# İle biLGİsayar programlama temelleri (C# Programlama Kitabı) Svetlin Nakov & Co

  • 9.7.1 Metotun Gövdesi
  • 9.7.2 Yerel Değişkenler
  • 9.8 Metot Çağrılması
  • 9.8.1 Metot Çağrıldığında Program Üzerindeki Denetimi Kim Alır
  • 9.8.2 Metot Nereden Çağrılabilir
  • 9.8.3 Metot Bildirimi ve Metot Çağrılması



  • Sayfa18/31
    Tarih02.07.2017
    Büyüklüğü3.36 Mb.

    Indir 3.36 Mb.
    1   ...   14   15   16   17   18   19   20   21   ...   31

    9.7 Metot Uygulaması (Yaratılması)



    Bir metot bildirildikten sonra, onun uygulanmasını yazmalısınız. Daha önce yukarıda açıkladığımız gibi, metotun uygulanması (gövdesi), yöntemini çağrılarak çalıştırılacağı koddan oluşur. Bu kod metotun gövdesine yerleştirilmelidir ve metotun mantığını temsil eder.

    9.7.1 Metotun Gövdesi



    Metot gövdesi kıvırcık parantezler "{" ve "}" arasına yerleştirilen ve doğrudan yöntem bildirimini izleyen kod parçasıdır.

    static (
    )

    {

    // … code goes here – in the method's body …



    }


    Metotun yaptığı asıl iş, tam olarak bu metotun gövdesi içine yerleştirilir. Bu yüzden, belirli bir görevi çözmek için yöntemde kullanılan algoritma yöntem gövdesinin içine yerleştirilmiştir.
    Şimdiye kadar metot gövdesinin birçok örneğini gördük, ancak birini daha aşağıdaki kod ile göstereceğiz:

    static void PrintLogo()

    { // Method's body starts here

    Console.WriteLine("Microsoft");

    Console.WriteLine("www.microsoft.com");

    } // … And finishes here



    Metot bildirimi kurallarından birini bir kez daha düşünelim:



    Bir metot başka bir metotun gövdesi içinde BİLDİRİLEMEZ.

    9.7.2 Yerel Değişkenler



    Bir metotun gövdesi içinde bir değişken bildirildiği zaman, bu yöntem için bu değişkene yerel değişken diyoruz. Bir değişkeni adlandırmak için C# tanımlayıcı kurallarına uyulmalıdır (bkz. "Temel Türler ve Değişkenler" Bölümü).
    Bir yerel değişkenin var olduğu, ve kullanılabilir olduğu alan değişkenin bildirildiği satırdan başlar ve metot gövdesinin kıvırcık parantez "}" ile kapandığı satırda sona erer.

    Bu, değişkenin görünürlük alanıdır (değişken kapsamı). Bir değişkeni bildirdikten sonra, zaten aynı addaki bir değişkeni bildirmeye çalışırsanız, hata nedeniyle kod derlemesi gerçekleşmez. Aşağıda bir örneğe bakalım:

    static void Main()

    {

    int x = 3;



    int x = 4;

    }



    İki farklı değişken için aynı x adını kullanalım ve derleyici aşağıdaki benzer bir ileti döndürecektir:

    'x' adında bir yerel değişken zaten bu kapsamda tanımlanmıştır.


    Kod bloğu diye "{" ve "}" ile açılan ve kapanan kıvırcık parantezler arasına yerleştirilen koda diyoruz.
    Değişken bir blok içinde bildirilirse, aynı zamanda (bu blok için) yerel olarak adlandırılır. Görünürlük alanı değişkenin bildirildiği satırdan başlar ve bloğun kapanış parantezinin bulunduğu satırda biter.

    9.8 Metot Çağrılması



    Metotu çağırma aslında kendi gövdesi içine yerleştirilen kodu yürütme sürecidir.
    Bir metotu çağırmak için çok kolaydır. Yapılması gereken tek şey, metotun adını ardından yuvarlak parantezler ve sonunda noktalı virgül ";" olmak üzere yazmaktır.

    ();


    Daha sonra çağrılan metot parametre listesi aldığında bir örnek göreceksiniz (buradaki durumda metot herhangi bir parametre almamıştır).
    Metot çağrısının nasıl çalıştığını açıklamak için, bir sonraki fragman PrintLogo() metotunun nasıl çağrıldığını göstermektedir:

    PrintLogo();


    Metotun çalıştırılması sonucu şöyledir:

    Microsoft

    www.microsoft.com


    9.8.1 Metot Çağrıldığında Program Üzerindeki Denetimi Kim Alır?



    Bir metot çalıştırıldığında programın üzerinde kontrolü ele alır. Çağrılan metotun içinde, ancak, bir başka metotu çağırıyorsanız, çağıran metot programın denetimini çağrılan metota verecektir. Çağrılan metot yürütmesini bitirip geri döndüğünde, denetimi çağıran metota verecektir. Çağıranın yürütmesi diğer metotu çağırmaya başlamadan önceki hemen o izleyen satırdan devam edecektir.
    Örneğin, Main() metotu içinden PrintLogo() metotunu çağıralım:


    İlk olarak, Main() metotunun (1) ile işaretlenmiş kodu yürütülecektir, sonra program denetimi PrintLogo() metotuna verilecektir (2) ile gösterilen noktalı ok. Bu yöntem PrintLogo() kodunun yürütülmesine neden olacaktır, (3) numaralı ok. PrintLogo() metotunun işi yapılıp bittiği zaman, program denetimi Main() metotuna geri döndürülür (4) numaralı noktalı ok. Main() yürütmesi PrintLogo() çağrısını izleyen satırdan devam eder (5) ile gösterilen ok.

    9.8.2 Metot Nereden Çağrılabilir?



    Bir yöntem aşağıdaki yerlerden çağrılabilir:


    • Ana program metotu Main():

    static void Main()

    {

    PrintLogo();



    }




    • Başka bir metotun içinden:

    static void PrintLogo()

    {

    Console.WriteLine("Microsoft");



    Console.WriteLine("www.microsoft.com");

    }

    static void PrintCompanyInformation()



    {

    // Invoking the PrintLogo() method

    PrintLogo();
    Console.WriteLine("Address: One, Microsoft Way");

    }





    • Bir metot kendi gövdesi içinden çağrılabilir. Böyle bir çağrıya özyineleme denir. Detayları için bkz. "Özyineleme" Bölümü.



    9.8.3 Metot Bildirimi ve Metot Çağrılması



    C#’da sınıf içindeki metotların sırası önemli değildir. Kod bildirilmeden önce bir metotu çağırmak için izin verilir:


    static void Main()

    {

    // …



    PrintLogo();

    // …


    }
    static void PrintLogo()

    {

    Console.WriteLine("Microsoft");



    Console.WriteLine("www.microsoft.com");

    }



    Eğer yukarıdaki kodu içeren bir sınıf oluşturuyorsanız, kodun başarılı bir şekilde derleneceğini ve çalışacağını göreceksiniz. Ana metottan önce yada sonra bildirdiğiniz farketmez. Bazı diğer dillerde (Pascal gibi), çağırma satırının altında bildirilen bir metotu çağırmaya izin verilmez.



    Bir metot bildirildiği ve uygulandığı aynı sınıfta çağrılıyorsa, bildirildiği satırdan önceki bir satırdan çağrılabilir.


    1   ...   14   15   16   17   18   19   20   21   ...   31






        Ana sayfa


    C# İle biLGİsayar programlama temelleri (C# Programlama Kitabı) Svetlin Nakov & Co

    Indir 3.36 Mb.