Java'da bu Anahtar Kelime: & Örnek ile nasıl kullanılır

İçindekiler:

Anonim

Java'daki bu Anahtar Kelime nedir?

Java'daki bu anahtar sözcük , bir yöntemin veya kurucunun geçerli nesnesine başvuran bir referans değişkendir. Java'da bu anahtar sözcüğü kullanmanın temel amacı, sınıf öznitelikleri ile aynı ada sahip parametreler arasındaki karışıklığı ortadan kaldırmaktır.

Aşağıda Java'da 'this' anahtar kelimesinin çeşitli kullanımları verilmiştir:

  • Mevcut sınıfın örnek değişkenine atıfta bulunmak için kullanılabilir
  • Mevcut sınıf yapıcısını çağırmak veya başlatmak için kullanılabilir
  • Yöntem çağrısında bir argüman olarak iletilebilir
  • Yapıcı çağrısında bağımsız değişken olarak iletilebilir
  • Mevcut sınıf örneğini döndürmek için kullanılabilir

Videoya erişilemiyorsa burayı tıklayın

Bir örnekle 'bu' anahtar kelimeyi anlayın.

Java bu anahtar kelime Örneği
  1. Sınıf : sınıf Hesabı
  2. Örnek Değişkeni : a ve b
  3. Yöntem Verileri ayarla : a ve b için değer ayarlamak için.
  4. Yöntem Verileri göster : a ve b için değerleri görüntülemek için.
  5. Ana yöntem: Hesap sınıfı için bir nesne oluşturduğumuz ve yöntemlerin verileri ayarladığı ve verileri gösterdiği yer.

Kodu derleyip çalıştıralım

A ve B için beklenen çıktımız sırasıyla 2 ve 3 değerlerine başlatılmalıdır.

Ama değer 0, Neden? Araştıralım.

Set data yönteminde, bağımsız değişkenler a ve b olarak bildirilirken, örnek değişkenler de a ve b olarak adlandırılır.

Yürütme sırasında derleyicinin kafası karışır. Atanan operatörün sol tarafındaki "a" nın örnek değişkeni mi yoksa yerel değişken mi olduğu. Bu nedenle, yöntem seti verileri çağrıldığında 'a' değerini ayarlamaz.

Çözüm, "bu" anahtar kelimesi

Java this anahtar sözcüğüyle birlikte hem 'a' hem de 'b' ve ardından bir nokta (.) Operatörü ekleyin.

Kod yürütme sırasında, bir nesne 'setdata' yöntemini çağırdığında. 'This' anahtar sözcüğü, nesne işleyicisi "obj" ile değiştirilir. (Aşağıdaki resme bakın).

Artık derleyici biliyor,

  • Sol taraftaki 'a' bir Örnek değişkenidir.
  • Sağ taraftaki 'a' yerel bir değişkendir

Değişkenler doğru şekilde başlatılır ve beklenen çıktı gösterilir.

Örnek değişkeniniz ve yöntem bağımsız değişkenleriniz için farklı adlar seçecek kadar akıllı olduğunuzu varsayalım.

Ancak bu sefer, her biri set data yöntemini çağıran iki sınıf nesnesi oluşturursunuz.

Derleyicinin nesne 1'in mi yoksa nesne 2'nin mi örnek değişkeni üzerinde çalışmasının beklendiğini nasıl belirleyeceği.

Eh, derleyici örtülü olarak ekler "bu" anahtar kelime (resmin altında) ile örnek değişkeni.

Öyle ki, nesne 1 set veri yöntemini çağırdığında, bir örnek değişkeni, referans değişkeni tarafından eklenir.

Nesne 2 set veri yöntemini çağırırken, nesne 2'nin bir örnek değişkeni değiştirilir.

Bu işlem, derleyicinin kendisi tarafından halledilir. Örneğimizdeki gibi istisnai bir durum olmadıkça 'bu' anahtar kelimesini açıkça eklemeniz gerekmez.

Örnek: "Bu" anahtar kelimeyi kullanmayı öğrenmek için

Adım 1) Aşağıdaki kodu bir not defterine kopyalayın.

class Account{int a;int b;public void setData(int a ,int b){a = a;b = b;}public void showData(){System.out.println("Value of A ="+a);System.out.println("Value of B ="+b);}public static void main(String args[]){Account obj = new Account();obj.setData(2,3);obj.showData();}}

Adım 2) Kodu Kaydedin, Derleyin ve Çalıştırın.
Adım 3) a & b'nin değeri sıfır olarak mı gösteriliyor? Hatayı düzeltmek için 6 ve 7 numaralı satırları " bu " anahtar kelimeyle ekleyin .

this.a =a;this.b =b;

Adım 4) Kodu Kaydedin, Derleyin ve Çalıştırın. Bu sefer, a & b'nin değerleri sırasıyla 2 ve 3'e ayarlanmıştır.

Özet

  • Java'daki bu Anahtar Kelime, mevcut nesneye atıfta bulunan bir referans değişkendir.
  • Java'da bu anahtar kelimenin kullanımlarından biri, mevcut sınıf örneği değişkenine atıfta bulunmaktır.
  • Mevcut sınıf yapıcısını çağırmak veya başlatmak için kullanılabilir
  • Yöntem çağrısında bir argüman olarak iletilebilir
  • Java'daki bu işaretçi yapıcı çağrısında argüman olarak iletilebilir
  • Java'daki bu operatör, geçerli sınıf örneğini döndürmek için kullanılabilir
  • Java'da bu, yöntemi çağrılan mevcut nesneye bir referanstır.
  • Örneğinizin / nesnenizin yönteminde / yapıcısında ad çakışmalarını önlemek için "this" anahtar sözcüğünü kullanabilirsiniz.