Java Eğitimleri 21 – This Kullanımı

Java’da birden fazla anahtar kelime kullanılmaktadır. Bunlardan biri de this anahtar kelimesidir. This kelimesi, o anda hangi işlem üzerinde çalışılıyorsa o işlemin bağlı olduğu nesnenin referansını döndürür.

This anahtar kelimesi, hem global hem de yapılandırıcıda aynı isimle bir değişken kullanıldığında karışıklığı  engellemek için kullanılır.

Örneğin;

public class this_ornekler {
    
    int OgrenciNo;
    String Ogrenciİsmi;
    
    public void Ogrenciler(int OgrenciNo, String Ogrenciİsmi)
    {
        
        this.OgrenciNo = OgrenciNo;
        this.Ogrenciİsmi = Ogrenciİsmi;
        
    }
    

 

NOT:  Eğer public static void main kod bloğunda sınıfı tanımlamaz ve yazdırmazsak herhangi bir çıktı oluşmayacaktır.

Örneğin;

public class ThisKullanimi {

    int sayi=0;
    
    
    public ThisKullanimi SayiSay()
    {
        
        this.sayi++;        
        return this;
                
    }
    
    public void Goster()
    {
        
        System.out.println("Sayı : "+ sayi);
    }
    
    public static void main(String[] args) {
        
        ThisKullanimi t=new ThisKullanimi();
        
        t.SayiSay(); // Sayı = 1
        t.SayiSay(); // Sayı = 2
        t.SayiSay().SayiSay().SayiSay(); // Sayı = 3 Sayı = 4 Sayı = 5
        
        t.Goster();
        

    }

}

Çıktımız:

 

 

 

Switch case yapılarıyla, tanımlanan sayıya göre konsolda değer okutmayı öğrenmiştik. Şimdi bu örneği bir de this yapılarıyla inceleyelim.

 

public class thiskullanımı {

    int ay=0;
    
    public void ay(int ay){
        
        this.ay = ay;
        
    }
    public void ayGoster(){
        
        switch(ay){
        
        case 1:
            System.out.println("Ocak");
            break;
        case 2:
            System.out.println("Şubat");
            break;  
        case 3:
            System.out.println("Mart");
            break;  
        case 4:
            System.out.println("Nisan");
            break;  
        case 5:
            System.out.println("Mayıs");
            break;  
        case 6:
            System.out.println("Haziran");
            break;  
        case 7:
            System.out.println("Temmuz");
            break;  
        case 8:
            System.out.println("Ağustos");
            break;  
        case 9:
            System.out.println("Eylül");
            break;  
        case 10:
            System.out.println("Ekim");
            break;  
        case 11:
            System.out.println("Kasım");
            break;
        case 12:
            System.out.println("Aralık");
            break;  
            
        default:
            System.out.println("Tanımsız Değer");
            break;
        }
    }
    
    public static void main(String[] args) {
        

        thiskullanımı t=new thiskullanımı(); // Bulunan Sınıf Adı Yazılmalı
        
        t.ay(6);
        t.ayGoster();
        
        
        
        
    }

}


 

Burada void main kod bloğunda, ay metodunu çağırırken 6. Ayı yazdırmasını istediğimiz için Haziran ayını yazdıracaktır.

 

Çıktımız:

 

 

NOT: Eğer public void ay metodunda, ay adlı değişkeni this kelimesi ile tanımlamasaydık bir diğer ifadeyle ay = ay olarak tanımlasaydık, ay adlı değişkenin değerini 0 olarak atayacak ve sonuç olarak da tanımsız değer çıktısını oluşturacaktır.

 

This anahtar kelimesinin kullanımı bu şekilde olacaktır. Soru çözümlerinde örneklerini yapmaya devam edeceğiz. İyi çalışmalar 🙂

 

 

Kodlarımızın Tam Halini Görmek İçin Tıklayınız.

 

Kodlarımızın Tam Halini Görmek İçin Tıklayınız.
Bir Önceki Soru Çözümünün Devamını Görmek İçin Tıklayınız.

Published by

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s