це ключове слово в Java
У чому полягає це ключове слово Java?
це ключове слово в Java є посиланням на змінну, яка посилається на поточний об’єкт методу або конструктора. Основна мета використання цього ключового слова в Java полягає в тому, щоб усунути плутанину між атрибутами класу та параметрами, які мають однакові імена.
Використання цього ключового слова в Java
Нижче наведено різні варіанти використання ключового слова "this" у Java:
- Його можна використовувати для посилання на змінну екземпляра поточного класу
- Його можна використовувати для виклику або ініціації поточного конструктора класу
- Його можна передати як аргумент у виклику методу
- Його можна передати як аргумент у виклику конструктора
- Його можна використовувати для повернення поточного екземпляра класу
Натисніть тут якщо відео недоступне
Зрозумійте ключове слово "це" на прикладі.
- Клас: клас Account
- Змінна екземпляра: а і б
- Метод Набір даних: встановлення значення для a і b.
- Метод Показати дані: для відображення значень для a і b.
- Основний метод: де ми створюємо об’єкт для класу Account і викликаємо методи set data і show data.
Давайте скомпілюємо та запустимо код
Наш очікуваний результат для A і B повинен бути ініціалізований значеннями 2 і 3 відповідно.
Але значення дорівнює 0. Чому? Нехай розслідують.
У методі Set data аргументи оголошуються як a і b, тоді як змінні екземпляра також називаються a і b.
Під час виконання компілятор плутається. Чи є «a» ліворуч від призначеного оператора змінною екземпляра чи локальною змінною. Отже, він не встановлює значення 'a' під час виклику набору даних методу.
Рішення полягає в ключовому слові «це».
Додайте «a» і «b» разом із Java це ключове слово з оператором крапка (.).
Під час виконання коду, коли об’єкт викликає метод setdata. Ключове слово «this» замінюється обробником об’єкта «obj». (Див. зображення нижче).
Отже, тепер компілятор знає,
- Буква «a» ліворуч — це змінна екземпляра.
- Тоді як «a» праворуч є локальною змінною
Команда змінні ініціалізуються правильно, і відображається очікуваний результат.
Припустімо, ви досить розумні, щоб вибрати різні імена для змінної екземпляра та аргументів методів.
Але цього разу ви створюєте два об’єкти класу, кожен з яких викликає метод набору даних.
Як компілятор визначатиме, чи має він працювати над змінною екземпляра об’єкта 1 чи об’єкта 2.
Ну, це компілятор неявно додає змінну екземпляра з ключовим словом «this» (зображення нижче).
Таким чином, коли об’єкт 1 викликає метод набору даних, до змінної екземпляра додається її змінна посилання.
Поки об’єкт 2 викликає метод набору даних, змінна екземпляра об’єкта 2 змінюється.
Цей процес виконує сам компілятор. Вам не потрібно явно додавати ключове слово «це», якщо немає виняткової ситуації, як у нашому прикладі.
це ключове слово в Java з прикладом
приклад: Щоб навчитися використовувати ключове слово «це».
Крок 1) Скопіюйте наступний код у блокнот.
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(); } }
Крок 2) Збережіть, скомпілюйте та запустіть код.
Крок 3) Значення a & b показано як нуль? Щоб виправити помилку, додайте до рядків № 6 і 7 «це” ключове слово.
this.a =a; this.b =b;
Крок 4) Збережіть, скомпілюйте та запустіть код. Цього разу значення a і b встановлені на 2 і 3 відповідно.
Підсумки
- це Ключове слово в Java є посиланням на змінну, яка посилається на поточний об’єкт.
- Одне з використання цього ключового слова в Java полягає в посиланні на змінну примірника поточного класу
- Його можна використовувати для виклику або ініціації поточного конструктора класу
- Його можна передати як аргумент у виклику методу
- цей покажчик в Java можна передати як аргумент у виклику конструктора
- цей оператор в Java можна використовувати для повернення поточного екземпляра класу
- це в Java є посиланням на поточний об'єкт, метод якого викликається.
- Ви можете використовувати ключове слово «this», щоб уникнути конфліктів імен у методі/конструкторі вашого екземпляра/об’єкта.
Перегляньте нашу статтю на Java Питання для співбесіди: - Натисніть тут