kodbankasi http://kodbankasi.org/kodbankasi

Java this kullanımı

Java programlama dilinde  this kelimesi oldukça kullanılır. Bu anahtar kelime genellikle kalıtım(inheritance) yaptığımızda işimize yarar. Kısaca inceleyelim.

This anahtar kelimesi:

Java, this anahtar sözcüğünü bir metot içinde geçerli nesneye bir referansta bulunmak için kullanır. O metodu çağıran ifadelerin özel olduğunu göstermek için kullanırız. Örnek anahtar gizleme işlemi yapar(instance variable hiding). Aynı ada sahip 2 tane yerel değişken tanımlamak mümkün değildir ancak sınıfın örnek değişkenleriyle aynı ada sahip olan (metodun parametreleri dâhil) yerel değişkenlere sahip olabilirsiniz. Yerel değişken örnek değişkenle aynı ada sahip ise örnek değişken gizlenir. Biraz karışık gelmiş olabilir ama örnek üzerinde daha iyi anlaşılacağı kanısındayım.

public class insan {
private String isim;
private int id;
public insan(int id, String isim){
this.id=id;
this.isim=isim;
}
}

Yukarıdaki örneğimizde insan sınıfımızda ve yapıcı metodumuzda id ve isim olarak iki değişkenimiz vardır. Eğer yapıcı metoddaki değişkenlere ulaşmak istersek sınıf içerisindeki nesne değişkenlerine değil de metod içerisindeki parametre değişkenlerine ulaşırız. Ancak this kullandığımızda yapıcı metoddaki nesne değişkenlerimize de ulaşabiliriz. Eğer metod ve sınıftaki değişkenlerimiz farklı değişkenler olsaydı this anahtar kelimesini kullanmadan da erişebilcektik.


Not: This kelimesinin en önemli özelliklerinden birisi de daha önce anlattığım static metodların içerinde kullanamıyor oluşumuz. Static metodlar nesneye değil sınıfımızın kendisine aittir. Şimdi this ile ilgili biraz daha zor bir örnek yapalım.

class kutu{
double en; double boy; double derinlik;
kutu(double en,double boy,double derinlik){ // yapıcı sınıfımız.
this.en=en; this.boy=boy; this.derinlik=derinlik; }
double hacim(){ return en*boy*derinlik; } //hacim hesaplatan metodumuz.
}
class kutuDemo{
public static void main(String args[]){
box mybox1=new box(5,10,15);   /*farklı boyutlardaki nesnelerin hacimlerini hesaplıyoruz.*/
box mybox2=new box(3,5,7);
System.out.println("1.hacim "+ mybox1.hacim());
System.out.println("2.hacim "+ mybox2.hacim());
}
}

Yukarıdaki program kutu hacim hesaplaması yapmaktadır.Bilmemiz gereken this yazıdığında o anda işlenen nesneye referans elde edilir. Ve böylece değişkenlere ulaşılır. Umarım faydalı bir makale olmuştur. Bir sonraki makalede görüşmek üzere…

Bir önceki yazımız olan Javada ++ ve -- operatörleri başlıklı yazımızı da inceleyebilirsiniz.

5 Yorumlar

  1. Şu super ve this kelimelerini hiç sevemedim nedense :)

  2. Mantığı kavradım sayenizde. Teşekkürler

    • Ben teşekkür ediyorum güzel yorumunuz için.

      • Başlangıç için güzel java makaleleri ancak ileri seviyelerde de yazılarınızı bekliyorum.

        • İleri seviye Java konularında hem makale yazmak hem de uygulamalı anlatmak çok fazla zamanımı alıyor ve şuan böyle bir boş zamanım malesef yok. İş yoğunluğum azaldığında Java, Android, Python ve Php yazılarım devam edecek…

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak.

Bu yazı da ilginizi çekebilir !

Java – Enumarations

Enumarations : numaralandırma bir sınıf tipi gibi tanımlanarak kullanılan veri türleridir.enumaration tanımlanırken enum anahtar sözcüğü ...