12 Kasım 2013 Salı

38 C# Görsel Programlama 38 Metodlar 2

Merhaba. C# da metodlar kavramına devam ediyoruz. 

Geçen dersimizde geriye değer döndürmeyen metodları yazmayı görmüştük. Bu dersimizde ise geriye değer döndüren metodları yazmaya çalışacağız. Mantık olarak pek farklılık yok. Sadece eklememiz gereken bir kaç kod var o kadar.

Haydi o zaman bismillah deyip başlayalım.

Geçen dersimiz de bir toplama işlemi yaptırmış ve sonucu metod içinde istediğimiz nesne üzerine yazdırmıştık. Bu dersimizde ise çıkan sonucu metod içinde yazdırmayalım bir sonra ki adımda kullanılmak üzere geri döndürelim.

Kodlarımıza geçmeden önce küçük bir açıklama ve formal olan şekliyle kullanımdan bahsetsek iyi olacaktır.



Aslında biz geriye değer döndürmek derken neden bahsediyoruz ilk olarak bu kavramı  kavramalıyız.


İlk dersimizde hatırlarsınız metod içinde işlemler yapılıyordu ve yazılmış kodlar çalışıyor, görev yerine getiriliyor ve işlem sona eriyordu. Metod içinde ne kadar işlem varsa gereği yapılıyordu. Metodun işi bitiyordu. 

Belirlediğimiz türde geriye değer döndüren bir metod sadece içindeki işlemleri yapmakla kalmaz metodun kendisini de döndürdüğü değere göre işlemlere tabi tutabiliriz. 

Biraz daha açacak olursak olayı, mesela ilk programımızda bir bir toplama işlemi yaptırmış ve sonucu label a metod içinde yazdırmıştık. Ama şimdi ben öyle bir metod yazmak istiyorum ki metod sonucu hiç bir yere yazmasın ama bana bulduğu sonucu geri döndürsün ben istediğim yerde kullanayım. 

O zaman int türünden değişkenleri bulunan metodumun toplama işlemi sonucunda int türünde değer döndürmesini beklerim. Yada buna bende karar verebilirim tabi ki toplama işlemini yaptırıp istersem string türünde bam başka bir ifade döndürmesini de isteyebilirim tabi ki bu tamamen programcının kendisine kalmıştır.

Nasıl yazacağız peki?


Erişim_yöntemi Geri_Döndürülecek_Tür Erişim_İsmi(Parametreler)
{
  Kodlar...
return Döndürülecek_Değer;
}


Şimdi kodlarımıza bir bakalım.


Gelin kodlarımıza bir bakalım şimdi. 

Metod diye belirttiğim kodlara bakacak olursak.

public şeklinde erişim yöntemini belirlemişim. 

Daha sonra int ifadesi ile bu metodun int türünde bir değer döndüreceğini belirtmişim.

Metodun ismini vermişim topla şeklinde. 

a ve b int türünde parametreler beklediğini belirtmişim.

Ve içeri girince bir toplama işlemi yaptırmışım ve int türündeki sonuç değişkeninde sonucu tutmuşum.

Son nokta ve geri değer döndüren metodların can alıcı noktası return ifadesi ile geriye hangi değeri döndüreceğini belirtmişim. 

Eğer int türünde değer döndüreceğini belirttiğimiz bir metod sonucunda string türünde bir değer döndürmeye çalışırsak hata alırız. 

Return ifadesini hiç kullanmayıp dönecek değeri belirtmezsek yine hata alırız bunlar  geri değer döndüren metod yazarken dikkat etmemiz gereken noktalar.

button1_click olayındaki kodlara bakarsak topla metodunu nasıl işleme dahil ettiğim görülecektir. Metodun kendisi geriye sonuç değerini döndürdüğünden label a metodun kendisini yazdırınca zaten döndürmüş olduğu değeri yazdırmış oldum.

Bir alttaki kodlarda ise metodun kendisini direk bir matematiksel işleme dahil ettiğim görülecektir.


İşte bu kadar dı metodlar. Umarım yararlı bir yazı dizisi olmuştur. Çalışan arkadaşlarıma kolaylıklar dilerim. Vesselam...


Murat Bilginer












Hiç yorum yok:

Yorum Gönder