Различие локальной переменной и поля класса с одинаковым именем
Указатель this может быть полезен в случае, когда локальная переменная в методе имеет то же самое имя, что и поле объекта:
void set(int x) { this->x = x; }
Здесь в методе set мы присваиваем полю класса x значение локальной переменной this. Чтобы различить поле класса x и локальную переменную с тем же именем мы используем запись this->x при обращении к полю класса.
Указатель this может быть полезен в случае, когда локальная переменная в методе имеет то же самое имя, что и поле объекта:
void set(int x) { this->x = x; }
Здесь в методе set мы присваиваем полю класса x значение локальной переменной this. Чтобы различить поле класса x и локальную переменную с тем же именем мы используем запись this->x при обращении к полю класса.