Skip to content

задания

Задание:

  1. Зачем нужно ключевое слово this?
  2. Можно ли обратиться к полям класса, не используя ключевое слово this? Как?
  3. Когда стоит использовать слово this?
  4. Создайте класс, который находит наибольшее из трех чисел. Ко всем переменным обращаться можно ТОЛЬКО используя this.
  5. Создайте класс, который делает из трех маленьких строк одну большую. Ко всем переменным обращаться можно ТОЛЬКО используя this.
  6. Создайте класс, который принимает аргументом, какую задачу он должен решить: “найти минимум из 2 чисел”, “найти сумму элементов массива”, “вывести строку с конца”. На выходе этот класс пишет в консоль Java-код, который решает заданную задачу. Ко всем переменным обращаться можно ТОЛЬКО используя this.

Ключевое слово this в Java используется для ссылки на текущий объект класса. Оно помогает различать между полями класса и параметрами метода или конструктора, особенно когда они имеют одинаковые имена.

Зачем нужно ключевое слово this?

  1. Различение имен: Если имя параметра метода или конструктора совпадает с именем поля класса, this позволяет явно указать, что вы имеете в виду поле класса.
  2. Передача текущего объекта: this может быть использовано для передачи текущего объекта в другие методы или конструкторы.
  3. Упрощение кода: В некоторых случаях использование this может сделать код более читаемым, особенно в больших классах.

Можно ли обратиться к полям класса, не используя ключевое слово this?

Да, можно. Если имя параметра метода или конструктора не совпадает с именем поля класса, вы можете обращаться к полям класса напрямую, без использования this. Например:

public class Example {
    private int value;

    public Example(int value) {
        this.value = value; // Здесь this используется для различения
    }

    public void setValue(int value) {
        this.value = value; // Здесь тоже
    }

    public void printValue() {
        System.out.println(value); // Здесь можно обращаться без this
    }
}

В методе printValue() можно обращаться к полю value без this, потому что нет конфликта имен. Однако в конструкторах и методах, где есть параметры с тем же именем, this необходимо для различения.

решение

https://gitlab.com/synergy9980417/tema3_urok4