Rumah >Java >javaTutorial >Bilakah Anda Harus Menggunakan Kata Kunci 'ini' dalam Kaedah Kelas Java?

Bilakah Anda Harus Menggunakan Kata Kunci 'ini' dalam Kaedah Kelas Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-27 20:49:17778semak imbas

When Should You Use the

Bila Menggunakan Kata Kunci "ini" dalam Kaedah Kelas

Kata kunci "ini" dalam Java memainkan peranan penting dalam pengaturcaraan berorientasikan objek dengan merujuk objek semasa. Mengetahui masa untuk menggunakannya adalah penting untuk kod yang jelas dan cekap.

Walaupun kata kunci "ini" mungkin kelihatan berlebihan apabila digunakan untuk mengakses pembolehubah contoh dalam kaedah kelas (mis., x lwn. this.x), ia berfungsi tiga tujuan utama:

1. Nyahkekaburan Rujukan Pembolehubah:
Dalam kaedah penetap, di mana hujah dan pembolehubah contoh mempunyai nama yang sama, "ini" digunakan untuk membezakan pembolehubah contoh. Ini memastikan pembolehubah yang betul diberikan nilai.

public class Foo {
    private String name;

    public void setName(String name) {
        this.name = name;
    }
}

2. Melepasi Objek Semasa sebagai Argumen:
Apabila menghantar contoh kelas semasa sebagai argumen kepada kaedah objek lain, "ini" digunakan untuk merujuk objek semasa.

public class Foo {
    public String useBarMethod() {
        Bar theBar = new Bar();
        return theBar.barMethod(this);
    }
}

public class Bar {
    public void barMethod(Foo obj) {
        obj.getName();
    }
}

3. Memanggil Pembina Ganti:
Dalam pembina, "ini" boleh digunakan untuk memanggil pembina lain daripada kelas yang sama. Ini membolehkan untuk mencipta objek dengan parameter berbeza sambil memastikan objek dimulakan secara konsisten.

class Foo {
    public Foo() {
        this("Some default value for bar");
    }

    public Foo(String bar) {
        // Do something with bar
    }
}

Atas ialah kandungan terperinci Bilakah Anda Harus Menggunakan Kata Kunci 'ini' dalam Kaedah Kelas Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn