Serkan Ayyıldız

Meraklı bir yazılım uzmanı...

C# Global Değişkenler

Selam C# severler :)

Yep yeni bir makaleyle tekrar birlikteyiz ve bugünkü konumuz global değişken yaşam alanı!

Eğer makalelerimi takip ediyorsanız şimdiye kadar değişkenlerimizi hep metotlar içerisinde yazıyor ve yazdığımız değişkenlerin tipi (string,int) ne olursa olsun hep o metot içerisinde kullanmak zorunda kalıyorduk.Global değişkenler sayesinde değişkenlerimizin karşılığına değer vermeksizin aynı değişkeni diğer metotlar içerisinde de kullanma şansına sahip oluyoruz,elbette yazılım dünyasında çok sık kullanmasak bile gerektiğinde güzel bir uygulama diyebiliriz :)

Bildiğiniz gibi yazılım yapısı en dış kümeden içeriye doğru sırasıyla isim-uzay,sınıf,metot şeklinde yapılanmıştır ve global değişken sınıf kümesinin içerisinde yer almaktadır,yani matematikte "b alt kümesidir a" gibi düşünebilirsiniz.Bu durumda global değişkenimiz aynı sınıf altında herhangi bir metot içerisinde kullanılabilir ancak çok önemli bir nokta var: aynı isimde değişken alt metotlarda yeniden tanımlanamaz.

Konuya örneklerle devam edersek hemen Visual Studio'yu açalım ve "globalDegisken" adında bir Windows Form projesi oluşturalım,ardından formumuza bir buton ekleyelim ve butona çift tıklayarak click eventine geçelim:

windows-form

c-sharp

Burada button1'in click eventi zaten başlı başına bir metot olduğunu biliyoruz,şimdi metot dışında ama sınıf içerisinde 
bir değişken tanımlayalım:

c-sharp-class

"isim" adındaki değişkenimiz Form1 sınıfı elemanı oldu ve artık tüm metotlarda kullanılabilir.Şimdide sınıf içerisinde tanımladığımız ama metot içerisinde tanımlamadığımız değişkenimizi messagebox ile ekranda görüntüleyelim:

class-variable

butona tıklıyoruz:

messagebox

Gördüğünüz gibi global değişkenimizi event içerisinde kullanabiliyoruz,şimdi de değişkenimizi tekrar tanımlamaya çalışalım:

csharp-variable

Hoopp o da ne "the variable...." gerisini yazmaya üşeniyorum ama olayın Türkçesi "Bu değişken daha önce zaten tanımlanmış ama değeri hiç kullanılmamış!" diyor,yani değeri ne olursa olsun sınıf içerisinde tanımlanmış bir değişken aynı isimde yeniden alt kümelerde (metotlarda) yeniden tanımlanamaz ancak değeri değiştirilebilir:

global-class

Sınıf içerisinde tanımladığımız "isim" isimli değişkenimize metot içerisinde yeniden tipini yazmadan sadece ismini ve yeni 
karşılığını yazdım.Şimdi de mesaj kutusundaki görüntüsüne bakalım:

method-variable

Burada süreç şu şekilde işliyor: ilk önce program çalıştığında biz butona tıklamadan önce değişkenimizin değeri "Serkan" ve biz butona tıkladığımızda program button1 click eventine geldiğinde sınıf içerisindeki aynı isimli değişkenin 
değerini "Serkan Çamur" olarak atadı,bu yüzden mesaj kutusundaki değer son değeri aldı.

Global değişken ile ilgili diğer bir önemli nokta ise sınıf içerisinde tanımlanan değişkene değer atamak zorunda değiliz 
ancak değişkeni messagebox içerisinde kullanabilmek için mutlaka değişkenimize değer atamalıyız.Bununla ilgili küçük bir örnek yapalım ve sınıf içerisinde meyve isminde string tipinde bir değişken oluşturalım:

global-method

Burada sınıf içerisindeki değişkenimize değer atamadık ancak metot içerisinde değerini verdik ve değer tanımlamasını şimdi messagebox.show metodu içerisinde kullanabiliriz:

code-behind

Global değişken yaşam alanıyla ilgili bu kadar örnek şimdilik yeterlidir diye umuyorum,gelecek makalelerimizde görüşmek 
dileğiyle hoşçakalın :)

Projeyi İndir

2 Yorum:

  1. alisezen
    2/29/2016

    Teşekkürler.

  2. Enes
    3/18/2015

    Global değişken demişsin, güzel de anlatmışsın, ama başka sınıftan nasıl çağrılacağından bahsetmemişsin be kardeşim. :(

Bir yorum bırak E-posta adresiniz yayınlanmayacaktır.

Menu