«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Когда и зачем вам нужно ключевое слово «this» в классах Java?

Когда и зачем вам нужно ключевое слово «this» в классах Java?

Опубликовано 16 января 2025 г.
Просматривать:231

When and Why Do You Need the

Понимание использования «this» в классах Java

Хотя «this» может в первую очередь относиться к текущему объекту, его конкретному использованию и необходимость может сбить с толку. Вот разбивка сценариев, в которых «это» незаменимо:

1. Устранение неоднозначности ссылок на переменные в сеттерах

Методы сеттеров часто используют «this», чтобы различать параметры и частные переменные-члены, имеющие одно и то же имя. Используя «this.x», код автоматически присваивает значение параметра «x» переменной экземпляра «x», избегая любой двусмысленности.

Пример:

public class Foo {
    private String name;

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

2. Передача текущего экземпляра класса в качестве аргумента

При вызове методов других объектов «this» позволяет вам передать текущий экземпляр класса в качестве аргумента. Это позволяет вызываемому методу получать доступ к текущему объекту и взаимодействовать с ним.

Пример:

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

    public String getName() {
        return "Foo";
    }
}

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

3. Вызов альтернативных конструкторов

В конструкторах «this» можно использовать для вызова альтернативных конструкторов того же класса. Это полезно, если у вас есть несколько конструкторов и вы хотите инициализировать объект определенными значениями.

Пример:

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

        // Optional additional lines
    }

    public Foo(String bar) {
        // Do something with bar
    }
}
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3