java this keyword tutorial with code examples
Bu Öğretici Java'da 'this' adlı Özel Anahtar Kelimeyi Basit Kod Örnekleriyle Ayrıntılı Olarak Açıklar. 'Bu' Anahtar Kelimesinin Nasıl, Ne Zaman ve Nerede Kullanılacağını Kapsar:
Bu eğiticide, Java'daki önemli kavramlardan biri olan 'bu' anahtar kelimesini tanıttık. 'Bu' anahtar kelimenin ayrıntılarını keşfedecek ve ayrıca Java'daki kullanımına ilişkin bazı örnekler sunacağız.
Java'daki 'bu' anahtar kelimesi bir referans değişkendir. Referans değişkeni 'this' Java programındaki mevcut nesneyi işaret eder . Dolayısıyla, mevcut nesnenin herhangi bir üyesine veya işlevine erişmek istiyorsanız, bunu 'bu' referansı kullanarak yapabilirsiniz.
Ne öğreneceksin:
Java 'bu' Giriş
'Bu' referansı, geçerli nesneyi işaret ettiği için genellikle 'bu işaretçi' olarak adlandırılır. 'Bu işaretçi', sınıf öznitelikleri ve parametreleri için bir isim olduğunda kullanışlıdır. Böyle bir durum ortaya çıktığında, 'bu' işaretçisini kullanarak parametrelere erişebildiğimiz için 'bu işaretçi' karışıklığı ortadan kaldırır.

Bu eğiticide, örneklerle birlikte çeşitli durumlarda 'bu' işaretçisinin kullanımını tartışacağız.
Java'da ‘Bu’ Ne Zaman Kullanılır?
Java'da 'bu' terimi aşağıdaki kullanımlara sahiptir:
- 'This' referansı, sınıf örneği değişkenine erişmek için kullanılır.
- Hatta yöntem çağrısında bir argüman olarak 'this' i bile iletebilirsiniz.
- 'This', geçerli sınıf yöntemini dolaylı olarak çağırmak için de kullanılabilir.
- Mevcut nesneyi yöntemden döndürmek istiyorsanız, 'bu' seçeneğini kullanın.
- Mevcut sınıf yapıcısını çağırmak istiyorsanız, 'bu' kullanılabilir.
- Kurucu, argüman olarak 'bu' a da sahip olabilir.
Şimdi bu kullanımların her birine ayrı ayrı bakalım.
'This' kullanarak Örnek Değişkenine erişin
Sınıf ve yöntem parametrelerinin örnek değişkenleri aynı ada sahip olabilir. 'Bu' işaretçisi, bundan kaynaklanan belirsizliği ortadan kaldırmak için kullanılabilir.
Aşağıdaki Java programı, örnek değişkenlerine erişmek için 'bu' öğesinin nasıl kullanılabileceğini göstermektedir.
class this_Test { int val1; int val2; // Parameterized constructor this_Test(int val1, int val2) { this.val1 = val1 + val1; this.val2 = val2 + val2; } void display() { System.out.println('Value val1 = ' + val1 + ' Value val2 = ' + val2); } } class Main{ public static void main(String() args) { this_Test object = new this_Test(5,10); object.display(); } }Çıktı:

Yukarıdaki programda, örnek değişkenlerinin ve yöntem parametrelerinin aynı adları paylaştığını görebilirsiniz. Örnek değişkenleri ile yöntem parametreleri arasında ayrım yapmak için örnek değişkenleriyle 'bu' işaretçisini kullanırız.
Yöntem Parametresi Olarak 'Bu' Geçti
Bu işaretçiyi ayrıca bir yöntem parametresi olarak da iletebilirsiniz. Bu işaretçiyi bir yöntem parametresi olarak geçirmek, genellikle olaylarla uğraşırken gereklidir. Örneğin, mevcut nesne / tutamaçta bazı olayları tetiklemek istediğinizi varsayalım, sonra bu işaretçiyi kullanarak onu tetiklemeniz gerekir.
Aşağıda verilen, bu işaretçiyi yönteme aktardığımız bir programlama sergisidir.
class Test_method { int val1; int val2; Test_method() { val1 = 10; val2 = 20; } void printVal(Test_method obj) { System.out.println('val1 = ' + obj.val1 + ' val2 = ' + obj.val2); } void get() { printVal(this); } } class Main{ public static void main(String() args) { Test_method object = new Test_method(); object.get(); } } Çıktı:

Bu programda ana işlevde Test_method sınıfından bir nesne oluşturuyoruz ve sonra bu nesne ile get () yöntemini çağırıyoruz. Get () yönteminin içinde, 'bu' işaretçisi, geçerli örnek değişkenlerini görüntüleyen printVal () yöntemine iletilir.
Mevcut Sınıf Yöntemini 'this' ile Çağırın
Yönteme 'bu' işaretçisini iletebildiğiniz gibi, bu işaretçiyi bir yöntemi çağırmak için de kullanabilirsiniz. Mevcut sınıfın yöntemini çağırırken bu işaretçiyi dahil etmeyi unutursanız, derleyici sizin için ekler.
Sınıf yöntemini 'this' ile çağırmanın bir örneği aşağıda verilmiştir.
class Test_this { void print() { // calling fuctionshow() this.show(); System.out.println('Test_this:: print'); } void show() { System.out.println('Test_this::show'); } } class Main{ public static void main(String args()) { Test_this t1 = new Test_this(); t1.print(); } } Çıktı:

Bu programda, sınıf yöntemi print (), ana işlevdeki sınıf nesnesi tarafından çağrıldığında bu işaretçiyi kullanarak show () yöntemini çağırır.
'Bu' ile geri dönün
Yöntemin dönüş türü mevcut sınıfın nesnesiyse, rahatlıkla 'bu' işaretçisini döndürebilirsiniz. Diğer bir deyişle, 'bu' işaretçisini kullanarak mevcut nesneyi bir yöntemden döndürebilirsiniz.
Aşağıda, 'bu' işaretçisini kullanarak bir nesnenin döndürülmesinin uygulaması verilmiştir.
xor java'da nasıl kullanılır
class Test_this { int val_a; int val_b; //Default constructor Test_this() { val_a = 10; val_b = 20; } Test_this get() { return this; } void display() { System.out.println('val_a = ' + val_a + ' val_b = ' + val_b); } } class Main{ public static void main(String() args) { Test_this object = new Test_this(); object.get().display(); } } Çıktı:

Yukarıdaki program, Test_this sınıfının bir nesnesi olan bunu döndüren get () yöntemini gösterir. Get () yöntemi tarafından döndürülen geçerli nesneyi kullanarak, yöntem görüntüsü sırayla çağrılır.
Mevcut Sınıf Oluşturucusunu Çağırmak İçin 'Bu' Kullanmak
Mevcut cla.s'lerin yapıcısını çağırmak için 'bu' işaretçisini de kullanabilirsiniz. Temel fikir, kurucuyu yeniden kullanmaktır. Yine, sınıfınızda birden fazla kurucu varsa, bu kurucuları birbirlerinden çağırarak yapıcı zincirleme ile sonuçlanabilirsiniz.
Aşağıdaki Java programını düşünün.
class This_construct { int val1; int val2; //Default constructor This_construct() { this(10, 20); System.out.println('Default constructor
'); } //Parameterized constructor This_construct(int val1, int val2) { this.val1 = val1; this.val2 = val2; System.out.println('Parameterized constructor'); } } class Main{ public static void main(String() args) { This_construct object = new This_construct(); } } Çıktı:

Yukarıdaki programda, sınıfta iki kurucumuz var. Diğer kurucuyu, sınıfın varsayılan kurucusundan 'this' işaretçisini kullanarak çağırırız.
Yapıcı İçin Argüman Olarak 'Bunu' Kullanmak
Ayrıca bir yapıcıya argüman olarak 'bu' işaretçisini de iletebilirsiniz. Aşağıdaki uygulamada gösterildiği gibi birden çok sınıfınız olduğunda bu daha yararlıdır.
class Static_A { Static_B obj; Static_A(Static_B obj) { this.obj = obj; obj.display(); } } class Static_B { int x = 10; Static_B() { Static_A obj = new Static_A(this); } void display() { System.out.println('B::x = ' + x); } } class Main{ public static void main(String() args) { Static_B obj = new Static_B(); } } Çıktı:

Yukarıdaki uygulamada gösterildiği gibi, iki sınıfımız var ve her sınıf oluşturucu diğer sınıfın yapıcısını çağırıyor. Bu amaç için 'bu' işaretçisi kullanılır.
Sıkça Sorulan Sorular
S # 1) Java'da bununla bunun () arasındaki fark nedir?
Cevap: Java'da bu, geçerli nesneyi ifade ederken, this () eşleşen parametrelere sahip kurucuyu ifade eder. 'Bu' anahtar kelimesi yalnızca nesnelerle çalışır. 'This ()' çağrısı, aynı sınıftan birden fazla kurucuyu çağırmak için kullanılır.
S # 2) Bu anahtar kelime Java'da gerekli mi?
Cevap: Özellikle geçerli nesneyi bir yöntemden diğerine veya kurucular arasında geçirmeniz gerektiğinde veya yalnızca diğer işlemler için geçerli nesneyi kullanmanız gerektiğinde gereklidir.
S # 3) Java'da this () ve super () arasındaki fark nedir?
Cevap: Hem this () hem de super () Java'da anahtar sözcüklerdir. This (), eşleşen parametrelere sahip geçerli nesnenin yapıcısını temsil ederken, super (), üst sınıfın yapıcısını temsil eder.
S # 4) Bir yapıcıda hem this () hem de super () kullanabilir misiniz?
Cevap: Evet, kullanabilirsiniz. This () yapıcısı geçerli kurucuyu işaret ederken, super () ana sınıf yapıcısını işaret edecektir. Hem this () hem de super () ilk ifade olması gerektiğini unutmayın.
Sonuç
'Bu' anahtar kelimesi, Java programındaki mevcut nesneye bir referanstır. Sınıf değişkenleri (örnek değişkenleri) ve yöntem parametreleri için aynı adlardan kaynaklanan karışıklığı önlemek için kullanılabilir.
'Bu' işaretçisini örnek değişkenlerine erişmek, yöntem veya kurucuya argümanlar iletmek, nesneyi döndürmek vb. Gibi birçok şekilde kullanabilirsiniz. 'This' işaretçisi Java'da önemli bir anahtar sözcüktür ve mevcut nesneye erişim için yararlı bir özelliktir ve üyeleri ve işlevleri.
Bu eğiticide Java'da 'bu' anahtar kelimenin kullanımını takip ettiğinizi umuyoruz.
Önerilen Kaynaklar
- Yeni Başlayanlar İçin JAVA Eğitimi: 100+ Uygulamalı Java Video Eğitimi
- Örneklerle Java Yansıtma Eğitimi
- Kod Örnekleriyle C # İstisna İşleme Eğitimi
- Örneklerle Python DateTime Eğitimi
- Kod Örnekleriyle C # İşlevleri / Yöntemleri Öğreticisi
- Java SWING Eğitimi: Konteyner, Bileşenler ve Olay İşleme
- Java Collections Framework (JCF) Eğitimi
- Java Arayüzü ve Örneklerle Soyut Sınıf Eğitimi