Konuyu görüntüle
IUCODERS FORUM > Programlama > .NET > C# "this" kullanimi?"
Yazar
hamdikan


avatar
dünya
Kayıt: 23.01.2006
26.05.2006-17:35 #7139
this.name=name;
bu sekılde yazılan kod
ne işe yarıyo
ne zaman kullanmak gerekıyo
kısacası ne anlama gelıyo :)
bunu ornek bı kod ustunde anlatırsanız iyi olur
NOT:1. sınıf oldugum ıcın acıklayıcı bı sekılde olursa sevinirim...
kolaygelsın herkese






yok

Yazar
orhan


avatar
istanbul
admin
Kayıt: 17.11.2005
26.05.2006-19:42 #7146
this içinde bulunduğu class ı döndürür.
şöyleki diyelim şöyle bir kod yazdın.
 

public class Test
{
        int x;
        public Test(int x)
        {
               this.x = x; 
        }
  
        public Test(int x, int y)
        {
                this(x);
                this.y = y; 
         }
 }


sana içinde olduğun nesneyi döndürüyor işte. static verilerde yalnız this sözcüğünü kullanamazsın.





N/A
Yazar
hamdikan


avatar
dünya
Kayıt: 23.01.2006
27.05.2006-00:32 #7174
olay anlasılmıstır
maili ekkliyorum belkı ilgilenen olur
mail(by tarik:))
icinde name isminde bir string tipinde uyesi ve
bu string tipindeki uye icine atama yapan IsimVer adli bir
metoda(fonksiyona) sahip olalim. ASagida nesneyi yaziyorum.

 
class Isim
{
    private string Name; // Class imizin Name isimli uyesi

    // Asagidaki fonk. Name uyemizin icini istedigimiz degiskenle doldurur

    public void IsimVer(string Name)
    {
         this.Name = Name;
        
// Burada fonk.nun parametresi olan Name ile sinifimizin uyesi olan
//Name karismasin diye this. anahtar sozcugunu kullanarak hangisinin
//fonksiyon parametresi, hangisinin sinifimizin uyesi olan Name
//oldugunu vurgulamamiz gerekmektedir.

    }

} //end of Isim



Yukaridaki yorum satirinda da anlattigim gibi sinifin uyesi ile
fonk.nun parametresini ayirt etmek adina bu sekilde bir bildirim
yapmamiz gerekmektedir. Aksi halde this kullanmasak;

 
public void IsimVer(string Name)
{
      Name = Name;
}

seklinde tanimlasaydik fonksiyonumuzu amacimizdan sapmis olurduk,
cunku C# derleyicisi sizin uye olan Name atama yapmak istediginizi
cozemiycek parametre olarak gelen Name i kendi kendine atamis oalcakti.






yok

Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb